1
0
Fork 0
forked from len0rd/rockbox
Commit graph

37241 commits

Author SHA1 Message Date
William Wilgus
1b7d35126b [coverity] playlist.c pl_save_update_control fix rest of potential fd leaks
Change-Id: I65a8ac6a2ce68c5fd3cde570c3ff1b2e737d911d
2024-06-04 17:18:30 -04:00
William Wilgus
dad01f29ff [coverity] multiboot.c write_bootdata_ fix memset size
the payload arg was swapped with the size arg

Change-Id: I1e1ef6e842a4fd00f7d4a656438fccbe7abc429a
2024-06-04 15:56:56 -04:00
William Wilgus
afba86f0f7 [coverity] playlist.c pl_save_update_control() close fd on error
Change-Id: Ib44e86a36540e65a15eed3e9b99106734379250d
2024-06-02 22:14:27 -04:00
William Wilgus
283f31dd39 [coverity] language.c lang_load() check bytes read for headers
Change-Id: I546f316692c6d0c201d36d3346aab7aab6cc4919
2024-06-02 22:07:02 -04:00
William Wilgus
ce6fbe4382 [coverity] cuesheet.c search_for_cursheet() if no dot strcpy to NULL
the logic here is a bit fuzzy to me maybe one of the copies to the cuepath
buffer adds a dot but I don't see anything explicit

Change-Id: Idcc469b5d04e4d9125b36df53d6aaa32a10f3bfd
2024-06-02 21:48:00 -04:00
William Wilgus
f4a044e561 [coverity] playlist.c get_track_filename() uninitialized buffer
format_track_path() uses path_append_ex() which might use strlen on the
existing buffer likely a false positive but cheap enough to guard against

Change-Id: I7061a434460f235fc58016f9dcf2dfe4633b9f59
2024-06-02 21:40:20 -04:00
William Wilgus
2903a8e8ac [coverity] tlsf.c tlsf_malloc guard against empty mempool
on error mp could still be NULL

Change-Id: Ic86571a7d5d0c3586d2be00b45251f03b1be3fca
2024-06-02 21:00:09 -04:00
William Wilgus
82dcf32736 [BugFix] headphone should be removed on first toggle
Change-Id: I10a77f210896a9ec317f9cbc7de21dccabafe426
2024-06-02 17:09:24 -04:00
William Wilgus
31ae252dcc [BugFix] Resume on headphone plug causes screen glitches
Change-Id: I396a662124a20420f6099522570c14cef4993205
2024-06-02 17:09:24 -04:00
William Wilgus
bbdba53413 [coverity] bookmark.c fix add_bookmark & false positive in remove_bookmark
Change-Id: Ifad76ac8cb297a8008127d4cd73056c5309167c1
2024-06-02 12:42:45 -04:00
William Wilgus
2e60316500 [coverity] skin_parser.c load_skin_bitmaps check buffer length for bm_data
Change-Id: Ia4496916bf32de332e054b62f1708b3e2ec8e7d8
2024-06-02 11:13:03 -04:00
William Wilgus
5c7fbe8f1b [coverity] tree.c set_current_file_ex explicitly check strrchr output
the math
        size_t endpos = filename - path;
        if (filename && endpos < MAX_PATH - 1)
should handle it just fine coverity doesn't think so

Change-Id: Ifa0494e56b40c8ab0081ebc771024a45cb24eb76
2024-06-02 10:41:50 -04:00
William Wilgus
cc67f420f2 [coverity] font.c load_cache_entry check for successful read
Change-Id: Ic2d8d6e498417983af7ee691f53dfb1e951561fa
2024-06-02 10:32:47 -04:00
Solomon Peachy
5d34887d4a voice: regression: Don't mangle the filename when spelling it out.
26c612f breaks file selections if you have filename extensions disabled
and filenames spelled out, because it modified the filename in place
breaking the caller.

Instead of using a lot of space to make a private copy, the simplest
approach is, if we strip the extension off, simply restore it
afterwards.

Change-Id: Iaf560e813053b8030c620bbed6d061a2423338d5
2024-06-01 18:27:09 -04:00
Solomon Peachy
e16230de8c FS#13433: Updated German Translation (Wilfried Winkler)
Change-Id: I87bc658186d2b65caded0e7cde7b9c8110da000c
2024-06-01 15:07:03 -04:00
Christian Soffke
bcd34cfaa7 playlist catalogue (etc.): prune context menu
"Create Directory" option not applicable
in browse filter modes, since directories
do not get displayed

Change-Id: I68944264b03115f7f94254d9df766e5584d30e5a
2024-06-01 12:40:45 -04:00
Christian Soffke
507fa214a8 Fix red in 3d7d1d4d
Change-Id: I335495b8672c7b4d187400fa8b0abe511b110688
2024-06-01 18:25:41 +02:00
Christian Soffke
3d7d1d4d5b plugins: properties: show track info for whole playlist
Track Info can now be displayed for the set of
all tracks contained in a  playlist. This lets
you calculate a playlist's length, for example,
even if it is not currently playing.

This functionality can be accessed from the
existing "Properties" screen for a selected
playlist file. A line has been added at the
very bottom to show Track Info.

Change-Id: I311532b7cfa9e29d46c0cd5623ba4c06c1dd5b5f
2024-06-01 11:55:36 -04:00
Christian Soffke
ef1e7d8896 bookmarks: show 'Create Bookmark' for unsaved playlists
Instead of hiding this option when the current playlist
is unsaved, we can offer to save the playlist, if
necessary, before attempting to create a bookmark.

This simplifies the workflow by getting rid of steps 1
and 2 that a user currently needs to perform:

1) Open context menu, check if "Create Bookmark" option
   is available
2) If not: Re-open context menu. Select Current Playlist
   -> Save Current Playlist
3) Re-open context menu. Select Bookmarks
   -> Create Bookmark

Change-Id: Ia9fb5f9db95e2fcbde03470a3c3745824424a339
2024-06-01 11:42:47 -04:00
William Wilgus
d1aeb7db9d [Coverity] playback.c audio_auto_change_frequency check for valid id3
Change-Id: Ia213134c690f4c1de16afba38eea740825558280
2024-05-31 23:02:28 -04:00
Solomon Peachy
eaeaac598d FS#13431: Provide a way to view the rockbox license in the menus
This adds a "Legal Notices" entry under the System menu that will
launch the text viewer plugin to display:

1) COPYING.txt   (containing the GPLv2 overall license for Rockbox)
2) LICENSES.txt  (containing all other relevant licenses and notices)

Change-Id: Id41ae491b6f9a6ec5663090246d0f6b661cddea5
2024-05-30 21:22:01 -04:00
Solomon Peachy
d22dbe74cb updatelang: '~' is not a legal character in dest or voice strings
...Unless it's the very first character (and will get stripped).

So detect and complain about this!

Change-Id: I5e333e8ee134160f64a67783b0d5aa564716d44e
2024-05-30 21:02:18 -04:00
Solomon Peachy
f0c1cf1eef Update US English "Translation"
Change-Id: I60b26a8d7d6ab02d017070581b9d28d4e4793293
2024-05-30 20:01:41 -04:00
Solomon Peachy
09e01c89a7 FS#13430: Updated German translation (Wilfried Winkler)
Change-Id: I0afd0468cafd22dea291eff044b86fd5b637468e
2024-05-30 19:49:16 -04:00
William Wilgus
aca41be3ca [Feature] Simulator add headphone and lineout toggling
Change-Id: I0b019414643e5c9037c0128093488da49e1a4c0d
2024-05-30 12:12:29 -04:00
William Wilgus
7ec1151ddd [BugFix] add button maps for iPod6GSim
Change-Id: I395d940a1b7dd3cb858a178150762b2301a3ca12
2024-05-30 11:01:29 -04:00
Andrey Maluy
3a60f3a0f7 better Cyrillic for 14-Rockbox-Mix
Change-Id: I5ae989536f213f488a551cef7b670d0b232f9fbf
2024-05-26 11:53:37 -04:00
Franklin Wei
e72bae7c3f [Superdom] Bugfix
Prevents the plugin from locking up on the highest difficulty level

Change-Id: I07ab77e825935948b2d15ca6d36ad24b2716ac1b
2024-05-26 11:51:30 -04:00
Solomon Peachy
4e54443dc9 manual: Document the fact that checkwps can validate %Sx theme tags
Change-Id: Ic0dec6e36290400dbdf9b735c79f9e3fc93febdf
2024-05-25 14:33:07 -04:00
Solomon Peachy
8b8c0c7c2a checkwps: Validate translated strings (%Sx)
In verbose mode it will log valid the strings found, otherwise it will
only complain when we encounter a missing string.

Unfortunately a missing string is not inherently a problem, due to
conditional expressions.  So all we can do is complain in checkwps
or if wps debugging is turned on.

Meanwhile, this is the first step in actually enumerating the translated
strings used by themes.

Change-Id: Ia93b333085e825d5b085c4d372ad8e13aa3e3ba1
2024-05-24 21:37:54 -04:00
Solomon Peachy
ac20f8a73c lang: Delete 12 unused strings
Change-Id: I7b1d98a0eb4c58cdf5c1819be6e2125e9261246b
2024-05-24 12:11:00 -04:00
Solomon Peachy
5dd9238004 Fix yellow in sim builds
Change-Id: Ibed5ca7a821a31128940d602ade75497c13631f5
2024-05-24 11:34:43 -04:00
Solomon Peachy
8825b33052 skin_debug: Don't segfault when dump a viewport with no children
Change-Id: I5dfcc53a735dab1552211cdf522f4d18d93e6ec8
2024-05-24 11:17:41 -04:00
Solomon Peachy
2dc6947a2d lang: Get rid of *unused* LANG_EQUALIZER_EDIT_MODE and all deprecated strings
The documentation says to not delete things but that dates back to when
we were a lot laxer in what we would accept at runtime.

I want to make things even stricter, and add a checksum or hash of
the string IDs, so that *any* change to the base language invalidates
translation and voice binaries at runtime.

Change-Id: I94a71781f839bec804dc04dd99660e5e866577bf
2024-05-22 08:52:17 -04:00
Solomon Peachy
62da4ad84b voice: Correct all uses of spashf() with an ID2P() argument
...Instead voice the string and all of the arguments manually.

Change-Id: Ic030b2f00c90cb372ff5b781a8de4bcb19375d5d
2024-05-19 21:05:43 -04:00
Solomon Peachy
dfe409c993 voice: Revert one of the changes made in b6053c4d54
We already voiced the full text displayed in that splash message.

Change-Id: I40cf3de9124f9614b139fae41c47ef2ce7fb227a
2024-05-19 21:05:43 -04:00
Solomon Peachy
27cb1abcec builds: Add disabled voice builds for Spanish, Estonian, and Czech
Including default voice selections

Note that piper does not have an Estonian voice option yet.

Change-Id: Ie3b9edcae222e70790eb01d38a13e2e69df8e7df
2024-05-18 10:45:36 -04:00
Solomon Peachy
76de880ee0 lang: Replace "DAC's" with "DAC" in English source.
Fix up the translations afterwards

Change-Id: I58594aa8022e071b2f1ccc071562de2512962b31
2024-05-17 08:31:09 -04:00
Solomon Peachy
8b1efab7a6 voice-corrections: move generic corrections to the END and document why
This is because a language may have a specific correction that should
take precedence over the global one, but if the global one is applied
first, then the language-specific correction gets skipped.

Change-Id: I45f736f20d6c83864df0bf764ca3d75ec4b9626a
2024-05-17 08:23:48 -04:00
Solomon Peachy
6c2f8f640f genlang: Strip _all_ leading '~' from dest/voice strings
(Instead of just the first)

Change-Id: I3c730fd4e570dc5ec77d63777c8499e81f1b0491
2024-05-17 08:07:58 -04:00
Solomon Peachy
1530bb4849 voice-corrections: Correct an error in English and sort languages alphabetically
('ADC' was being converted to 'A C C' for some reason..)

Change-Id: I0157813cad963cbfae3f63b00f0c75df01ec8e0c
2024-05-17 08:06:22 -04:00
Solomon Peachy
c615a02ee3 updatelang: Improve tests for illegal characters
Change-Id: I1a8ed93f1e7d6b449e634656c8ff087f28c259f5
2024-05-16 21:51:14 -04:00
Solomon Peachy
b9755a3085 A handful of language cleanups
Change-Id: If828e6c6d13ec8ef15d829d6c8fb950ad3af3f75
2024-05-16 21:51:14 -04:00
Solomon Peachy
eb71060e96 lang: Run the master English language file through a cleanup pass
Do a cleanup pass on english-US too.

Change-Id: I1b13d1c05585ef7258378d8a89bfe01cba0d7b36
2024-05-16 21:16:25 -04:00
Solomon Peachy
3a6ed727d4 lang: Add a special flag to differentiate "intentionally identical to english"
We normally treat "same as English" as a translation errors that needs to be
corrected.  However, many languages effectively use english words as-is, so
we need a way of distinguishing the "intentionally the same" situations with
our tools "automatically copying missing translated strings from English" to
avoid blank or missing UI strings.

The solution is to make sure these "intentionally same as english"
strings are actually different.  This will be accomplished by prepending
'~' to the these strings.  This special character is stripped from the
binary data files used by the player and the voice generation tools.

Change-Id: I90088cbd74de0e5cb9d65f75f26afe04f7e301bf
2024-05-16 20:40:37 -04:00
William Wilgus
9d3b012ac0 [BugFix, Asan] skin_tokens.c get_dir path name underrun
preventing multiple slashes reads prior to the buffer by 1 byte
when only a single slash exists

Change-Id: I1ce1dc8d754bf1c8798dc49f396c9142e4a6e49c
2024-05-13 17:19:45 -04:00
Christian Soffke
556b466f05 shortcuts: allow empty name for sleep shortcuts with default duration
missed this in f631bfe

Change-Id: Ifdb3ffc04b49133b770850b98399605c04742f6e
2024-05-13 21:26:30 +02:00
Solomon Peachy
b94e5d77fe Update English_US "translation"
Change-Id: I94bcbb86ab8421aee248553dc38fd13bb6573cf7
2024-05-13 14:21:26 -04:00
Solomon Peachy
08c35a2299 FS#13422: Update Polish Translation (Adam Rak)
Change-Id: Ida6a7315645102a27732dc66809dc9ee922f9b46
2024-05-13 14:21:26 -04:00
Christian Soffke
fdba79cd77 shortcuts: refactor sleeptimer / talk_timedate
move some functions around, with no effect on behavior

Change-Id: I4638a28f5ff2a851534a3dd696ea7e763029cb2f
2024-05-13 18:18:45 +02:00