Skip to content

Commit 180ddbc

Browse files
authored
Merge pull request #672 from ianmcorvidae/detect-repeating
Detect repeating fields using field labels, enabling admin key to be set
2 parents 23e6eca + 3bbd02c commit 180ddbc

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

meshtastic/__main__.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -233,8 +233,8 @@ def setPref(config, comp_name, valStr) -> bool:
233233
print(f" {temp_name}")
234234
return False
235235

236-
# note: 'ignore_incoming' is a repeating field
237-
if snake_name != "ignore_incoming":
236+
# repeating fields need to be handled with append, not setattr
237+
if pref.label != pref.LABEL_REPEATED:
238238
try:
239239
if config_type.message_type is not None:
240240
config_values = getattr(config_part, config_type.name)
@@ -249,11 +249,11 @@ def setPref(config, comp_name, valStr) -> bool:
249249
config_values = getattr(config, config_type.name)
250250
if val == 0:
251251
# clear values
252-
print("Clearing ignore_incoming list")
253-
del config_values.ignore_incoming[:]
252+
print(f"Clearing {pref.name} list")
253+
del getattr(config_values, pref.name)[:]
254254
else:
255-
print(f"Adding '{val}' to the ignore_incoming list")
256-
config_values.ignore_incoming.extend([int(valStr)])
255+
print(f"Adding '{val}' to the {pref.name} list")
256+
getattr(config_values, pref.name).append(val)
257257

258258
prefix = f"{'.'.join(name[0:-1])}." if config_type.message_type is not None else ""
259259
if mt_config.camel_case:

0 commit comments

Comments
 (0)