This implements the set immutable policy handler so we allow incoming
memories set to AM if they're in the right band, so that paste works.
Related to #11022
This will cause us to try to insert comment lines back where they
came from when we save a file. We do that by keeping track of which
memory they came after and trying to insert them back into the stream
when we save. This will be inexact, of course, but is probably good
enough for most people.
Related to #11081
Fixes:
.../ft1d.py:912: DeprecationWarning: Invalid negative seek from 0x280a to 0x054a
.../ft1d.py:912: DeprecationWarning: Invalid negative seek from 0x094a to 0x047e
.../ft1d.py:912: DeprecationWarning: Invalid negative seek from 0xdf60 to 0x04ba
.../ft1d.py:912: DeprecationWarning: Invalid negative seek from 0x04ee to 0x04c0
.../ft1d.py:912: DeprecationWarning: Invalid negative seek from 0x1d813 to 0xced0
Removes an almost identical assignment to the same variable.
The previous assignment to _SG_RE is at lines 732-733 where the second line
is missing the "r" prefix.
Fixes:
/usr/lib/python3/dist-packages/chirp/drivers/ft1d.py:832: SyntaxWarning: invalid escape sequence '\d'
"(?P<m>[\d]*)[\s\']*(?P<s>[\d]*)")
The memedit module tries to parse out extra.foo from the name, if
present. A setting with a dot character in it will cause us to crash
trying to split this out because we don't just stop at the first one.
Fixes#11157
There also seems to be a bug introduced to CHIRP-next build 20230531 that
causes the '.' (period) at the end of the string at line 1330 to be used
to split the value at this point to create an extra value. This causes
loading of the puxing_px888.img test image to fail. This should probably
be fixed, but removing the '.' from the string resolves the issue for now.
This creates chirp-logo.png which contains the trimmed true-to-size
rectangular logo without a transparent square canvas. It replaces
chirp.png (which is used for application icons) with a 256x256 square
transparent version.
This makes the dual-bank models "detected by" the regular ones and
also de-alias-es the whole leixen hierarchy. Also fix up some
non-byte-clean stragglers in this driver.
Co-Authored-By: Dan Smith <chirp@f.danplanet.com>
Fixes: #4069
Fixes:
ERROR: Duplicate definition for n_a on line 12: n_a:1, // n-a; renaming to n_a_000c7d (previous definition line 9)
ERROR: Duplicate definition for n_a on line 38: n_a:1,; renaming to n_a_000c8d (previous definition line 35)
Fixes:
ERROR: Duplicate definition for unknown1 on line 100: unknown1:2,; renaming to unknown1_000e52 (previous definition line 59)
ERROR: Duplicate definition for unknown2 on line 103: unknown2:1,; renaming to unknown2_000e52 (previous definition line 62)
ERROR: Duplicate definition for unknown3 on line 106: u8 unknown3:6,; renaming to unknown3_000e53 (previous definition line 67)
Fixes: #10556
Fix issue where Chirp still displays a channel when the channel was deleted via the radio keypad.
Resolve "Illegal set on attribute power - Fix this driver! " Warning
- introlines are 16 char long but the 16th char is not displayed correctly so force the 16th to space
- a truncated introline1 to 12 char is stored in basicsettings
This changes string concat to formatting, fixes some style issues
related to space around operators, etc. Most importantly it removes
the use of eval() as a shortcut to accessing elements of the memory
object, which is a very large security concern.
This makes bitwise warn about duplicate names defined in the same
scope, which before resulted in loss of access to the eclipsed
element. Now, an error log is emitted.
There are a lot of drivers committing this crime, so I've added a
test to highlight them and marked it as XFAIL for the moment.
Fixes#11140
The icv80 had a duplicate entry in a bitwise scope, which caused the
driver author to incorrectly use a set_raw(15) instead of 16. Also,
a one-off on the number of channels was causing a negative seek,
and also a few unnecessary seeks.