Bug #10171
closed"'NoneType' object is not iterable" on settings tab with a Yaesu VX-6
0%
Description
When navigating to the settings tab in a VX-6 image, CHIRP pops up a dialog saying, "'NoneType' object is not iterable" and leaves the tab empty. Here are the exceptions displayed in the terminal:
Traceback (most recent call last):
File "/home/dominickpastore/chirp/chirp/drivers/vx6.py", line 823, in get_settings
return self._get_settings()
File "/home/dominickpastore/chirp/chirp/drivers/vx6.py", line 640, in _get_settings
val = RadioSettingValueString(0, 16,
File "/home/dominickpastore/chirp/chirp/settings.py", line 215, in __init__
self.set_value(current)
File "/home/dominickpastore/chirp/chirp/settings.py", line 229, in set_value
raise InvalidValueError("Value contains invalid " +
chirp.settings.InvalidValueError: Value contains invalid character `'
ERROR: Context raised unexpected_exception
Traceback (most recent call last):
File "/home/dominickpastore/chirp/chirp/wxui/settingsedit.py", line 49, in _initialize
self._load_settings()
File "/home/dominickpastore/chirp/chirp/wxui/settingsedit.py", line 59, in _load_settings
for group in self._settings:
TypeError: 'NoneType' object is not iterable
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/wx/core.py", line 3285, in <lambda>
lambda event: event.callable(*event.args, **event.kw) )
File "/home/dominickpastore/chirp/chirp/wxui/settingsedit.py", line 49, in _initialize
self._load_settings()
File "/home/dominickpastore/chirp/chirp/wxui/settingsedit.py", line 59, in _load_settings
for group in self._settings:
TypeError: 'NoneType' object is not iterable
This is on the py3 branch, but a similar exception happens on the py2 build:
Traceback (most recent call last):
File "/app/lib/python2.7/site-packages/chirp/drivers/vx6.py", line 823, in get_settings
return self._get_settings()
File "/app/lib/python2.7/site-packages/chirp/drivers/vx6.py", line 642, in _get_settings
_settings.arts_cwid_alpha))
File "/app/lib/python2.7/site-packages/chirp/settings.py", line 212, in __init__
self.set_value(current)
File "/app/lib/python2.7/site-packages/chirp/settings.py", line 227, in set_value
"character `%s'" % char)
InvalidValueError: Value contains invalid character `'
Traceback (most recent call last):
File "/app/lib/python2.7/site-packages/chirp/ui/settingsedit.py", line 220, in _build_ui
raise Exception("Invalid Radio Settings")
Exception: Invalid Radio Settings
The image causing this issue is attached. This may in fact be my own fault. I used this radio to reverse engineer some of the settings that were missing from CHIRP, and I may have accidentally introduced a bit of corruption in the process. (I also bring it up because you may find some weird things that a user wouldn't normally do with their radio in that image.)
I did try opening an older image and the settings page seemed to work fine.
This was on Ubuntu 20.04 with the py3 branch at commit d1a22929 and the daily-20221207 py2 build.
Files