Skip to content

Commit fa67369

Browse files
authored
Merge pull request #376 from andlaus/fix_issue375_and_pr373
Fix issue #375 and PR #373
2 parents 7225cd9 + 4e676bf commit fa67369

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

odxtools/parameters/lengthkeyparameter.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,8 @@ def encode_placeholder_into_pdu(self, physical_value: Optional[ParameterValue],
105105
# emplace a value of zero into the encode state, but pretend the bits not to be used
106106
n = odxrequire(self.dop.get_static_bit_length()) + encode_state.cursor_bit_position
107107
tmp_val = b'\x00' * ((n + 7) // 8)
108-
encode_state.emplace_bytes(tmp_val, obj_used_mask=tmp_val)
109-
110108
encode_state.cursor_bit_position = 0
109+
encode_state.emplace_bytes(tmp_val, obj_used_mask=tmp_val)
111110

112111
def encode_value_into_pdu(self, encode_state: EncodeState) -> None:
113112

odxtools/parameters/tablekeyparameter.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -80,18 +80,23 @@ def _resolve_odxlinks(self, odxlinks: OdxLinkDatabase) -> None:
8080
super()._resolve_odxlinks(odxlinks)
8181

8282
# Either table_ref or table_row_ref will be defined
83-
if self.table_ref:
83+
if self.table_ref is not None:
8484
if TYPE_CHECKING:
8585
self._table = odxlinks.resolve(self.table_ref, Table)
8686
else:
8787
self._table = odxlinks.resolve(self.table_ref)
8888

89-
if self.table_row_ref:
89+
if self.table_row_ref is not None:
9090
if TYPE_CHECKING:
9191
self._table_row = odxlinks.resolve(self.table_row_ref, TableRow)
9292
else:
9393
self._table_row = odxlinks.resolve(self.table_row_ref)
94-
self._table = self._table_row.table
94+
95+
if self.table_ref is None and self.table_snref is None:
96+
if TYPE_CHECKING:
97+
self._table = odxlinks.resolve(self._table_row.table_ref, Table)
98+
else:
99+
self._table = odxlinks.resolve(self._table_row.table_ref)
95100

96101
@override
97102
def _resolve_snrefs(self, context: SnRefContext) -> None:
@@ -116,11 +121,7 @@ def _resolve_snrefs(self, context: SnRefContext) -> None:
116121

117122
@property
118123
def table(self) -> "Table":
119-
if self._table is not None:
120-
return self._table
121-
if self._table_row is not None:
122-
return self._table_row.table
123-
odxraise(f'Could not resolve the table of {self.short_name}')
124+
return self._table
124125

125126
@property
126127
def table_row(self) -> Optional["TableRow"]:

0 commit comments

Comments
 (0)