Commit graph

37134 commits

Author SHA1 Message Date
William Wilgus
4d0d41a0f4 [Cleanup] abrepeat.c
ab_repeat_init() doesn't do anything and some of the checks are redundant

Change-Id: Icc861c57b119f541c0cbdb9e0074b78f1f4f10bb
2024-06-20 11:14:27 -04:00
Solomon Peachy
547b6a570d codecs: Update libspeex from 1.2beta3 to 1.2rc1
This is a relatively minor bump, but it's the first step towards
bringing this current.

Change-Id: Iab6c9b0c77f0ba705280434ea74b513364719499
2024-06-20 07:08:35 -04:00
Solomon Peachy
8ef20383b1 sims.pl: Skip over 'obsolete' targets
Change-Id: Ieb198a3de84d3d99b6f046ff340bcfac5c19fc7a
2024-06-19 17:29:32 -04:00
Solomon Peachy
637f93074e tools: Clean out some historical cruft from 'sims.pl'
It's intended to build all of the Windows Simulator builds in one fell
swoop but has bitrotten a bit.  Correct some of the glaring
problems.

Change-Id: I6073af629d2698624036ccf303a5d18398cefdc0
2024-06-19 17:26:47 -04:00
William Wilgus
204551444e [Cleanup] viewport.c
hopefully the order of the events enable / disable don't matter
as far as I can tell it doesn't

Change-Id: Ia6bbe83ede788712e67aae6599585d6f79bfbcdc
2024-06-19 14:28:28 -04:00
Solomon Peachy
6f4d0b7eb1 m4a: Fix a warning under GCC 8.
...Not sure why this just cropped up now.

Change-Id: I2318ee929fb5fddbf033680d92f21bba73631db6
2024-06-19 09:22:44 -04:00
Solomon Peachy
2ef10ec734 Fix typo in the previous commit
Change-Id: I9e8de11ba86e147abc9bb5b3dfcc550655fe360d
2024-06-19 09:22:44 -04:00
Solomon Peachy
9beca004b9 simulator: Hopefully fix red introduced in 5b61c79cf
This problem only happened with GCC7 (and older?) simulator builds, and
was introduced by an incorrect test that always stripped our default
optimization (-Os) in simulator builds.

The fix is to correct the test to only strip -Os if the user explicitly
enables a debug build.

Also, use -Og instead of (implicit) -O0, as per GCC recommendations.

Change-Id: I61091b3cdf5323504961c0bb2d80aa65049eb8fb
2024-06-19 08:49:02 -04:00
Vencislav Atanasov
b3e6b12266 Prevent rebooting in early USB mode in case of a RAM disk
If disk_mount_all() fails at startup, the device should enter USB mode,
so the storage can be repartitioned/reformatted. After
unmounting/ejecting, the device is rebooted. Unfortunately if the
storage is a RAM disk, the data won't persist after a reboot, so this
patch tries to mount the storage again, instead of just rebooting.

Change-Id: I421a9fd8ae536bee07d292f27d1da0615456df62
2024-06-18 20:45:40 -04:00
Roman Artiukhin
e80cf93b67 Codecs: debugging: Disable compiler optimizations when DEBUG is defined
Change-Id: I6a65a2f650c4c7e0cde6165e8f46df1f3a5fd855
2024-06-18 20:43:35 -04:00
Roman Artiukhin
5b61c79cf8 simulator: debugging: Disable -Os compiler optimizations when DEBUG is defined
Otherwise, breakpoints may not correspond with the source code

Change-Id: I0f8d4f578bde52c0219923d8be28e01c66c8dfbc
2024-06-18 20:42:59 -04:00
Solomon Peachy
eb2146d683 plugins: add lang_is_rtl() to the plugin API.
So plugins can put stuff in the correct order, if they care.

Change-Id: Iac322bcb8cf78b37d3caef4c8d7b2a14923669f4
2024-06-18 12:50:52 -04:00
Solomon Peachy
57b3d2ffb1 FS#13358: Fix sansapatcher build against musl libc
Change-Id: I1824019f4eb30877e2883912ddb50bd420de9fb6
2024-06-18 10:55:27 -04:00
William Wilgus
70c5d6239e [Feature] splash.h split too long strings to multiple lines
If no split tokens are found the string just goes off into space

instead shoten the string till it fits and continue on with the
remaining string

Change-Id: I7fa3619fe8c75ec6c849996d4c3518409938152b
2024-06-18 09:52:41 -04:00
Solomon Peachy
73f40d8a23 build: Experimental LTO support, phase one
* Only codecs and plugins are enabled
 * Only native builds (so far)
 * Only tested on xDuoo X3 (MIPS, monochrome)
 * opus & speex generate some warnings
 * Significant compile time impact

Change-Id: I519b0d179631a54b2103cd67225bd5ec6ad3bd2f
2024-06-18 08:15:47 -04:00
William Wilgus
7b12cc3927 pathfuncs.c remove strip_leading_separators()
This should actually be strip_extra_leading_separators() but
its not used anywhere else yet and I don't see enough callers
in core to make it worth the extra overhead

Change-Id: Icdd292869b4198bed7725c51820f6b2111ad739d
2024-06-16 12:33:16 -04:00
Solomon Peachy
ae25a425b6 ATA: Fix regression when trying to set power management mode with CF cards
Some CF cards claim to support Advanced Power Management, but error
out when the command is issued.  There is a special case in the
code that ignored errors when issuing the APM command, but was referenced
against a specific index in the feature table.

When the tagle was reorganized, the index was wrong depending
on if ATA_DMA was enabled or not.

The fix is to test against the specific subcommand ID instead of the
table index.

Change-Id: I2ef7a05b2d70675c38e41d70b5189b394056cb74
2024-06-14 10:56:23 -04:00
William Wilgus
de4a08f319 [Bugfix] filetree.c ft_assemble_path() absolute currdir
path_append throws away the basepath if currdir starts with a slash
I thought I had this fixed but it was just getting covered up

instead step past all the slashes and use that for our append dir

Change-Id: I170a2af99455cea09e6e695dfb89fdd42733bd4b
2024-06-14 01:40:19 -04:00
William Wilgus
935fb736e8 [FixRed] tagcache.c
I think this should be APPLICATION for hosted

Change-Id: Id0d2107bff004abf6762a8c0643b0bd872c6a24e
2024-06-13 07:52:46 -04:00
William Wilgus
633b06dcfe [Bugfix] tagcache.c reverse conditional for native targets
Change-Id: Icad11d2182586a1401bc46053273207a1283c73e
2024-06-13 07:17:01 -04:00
Solomon Peachy
4d9c7e2063 Improve the "No partition found" behavior.
(This is a different implementation of the fix in g#5726, by Vencislav Atanasov)

The core problem is that the user is prompted to insert a USB cable
to fix the partitioning etc but the code that monitors for USB insertion
hasn't been started yet.  Correct this.

If no USB support is present, reboot after 5 seconds if it's not a debug
build.

If USB support is present, want for insertion first, then do the
reboot-if-not-debug behavior.

Change-Id: I87827e7fe2fe9a02298918c6ebc4d8a9fb33d624
2024-06-11 15:21:02 -04:00
Solomon Peachy
ec23260fd1 mikmod: Settings names should _NOT_ be i18n'd.
Regression was introduced back in 2019 in 2ebb8da275

Change-Id: I035e295b4e17e1f834059d1c6466562000749e54
2024-06-11 10:13:40 -04:00
Solomon Peachy
11c70c6164 MAINTAINERS: Add our German translation maintiner
Change-Id: I123bf20428f5e61ed61dbe7e6a511a9299305b9b
2024-06-11 10:13:40 -04:00
Solomon Peachy
c97954f014 FS#13434: Partially internationalize the textviewer plugin
* Converted over all previously-translated strings
 * Lots of comments added to mark the next phase
 * Voice filename of the file being loaded if possible

Change-Id: Ia3219bbfa4505ad29a25bcf1d6eacc94c59a2a83
2024-06-11 09:53:40 -04:00
Solomon Peachy
8c6b579b32 FS#13435: Update Polish Translation (Adam Rak)
...Also list Adam as the Polish language maintainer

Change-Id: I51501af0f341372eb999e94dc4bcb136c7e6a884
2024-06-09 09:03:50 -04:00
Solomon Peachy
8259c12a2f docs: Update MAINTAINERS file to add a "this is pretty out of date" blurb
List myself as the active maintainer of a few more pieces

Change-Id: I538b1d355661f921f8d571004b59a64c9718ac89
2024-06-09 09:03:50 -04:00
Solomon Peachy
b222e909d4 lang: Update english-us "translation"
Change-Id: Id63b12a2afb27e611b174bbb7cc4f954834d0383
2024-06-08 19:03:35 -04:00
Solomon Peachy
810e337a87 xduoox3: It doesn't have a radio, so don't put that in APPEXTRA
Change-Id: I4521598af49f91ab89d19bb6c2bf8bebf60bad51
2024-06-08 19:03:35 -04:00
Solomon Peachy
46ec07e4be mikmod: partial revert of previous commit.
The strings in the struct configdata[] are only used in the settings
file, and not displayed.  Therefore there is no need to translate them.

Change-Id: Id9e03c4b0454412b319ad678e6f57a46e1da0f6e
2024-06-07 18:10:48 -04:00
Solomon Peachy
20f50bbca3 plugins: mikmod and chessbox weren't fully translated
This unfortunately required adding four more strings.

Change-Id: I656c3c4902de5f841ea742549b3d122463e399a8
2024-06-07 17:47:17 -04:00
Solomon Peachy
92b5255106 lang: Add a few more items to the "ignore if same as English" list
Change-Id: If65476d563b61a195de8554312c8a51e6aa4187d
2024-06-07 12:21:54 -04:00
Solomon Peachy
b9e6e67962 voice: Switch default piper voice for Italian
Change-Id: I9c234e258e0c32f7232851e7e431083b287f73dd
2024-06-07 12:21:54 -04:00
William Wilgus
3b9d804bdf [coverity] playlist.c format_track_path() guard NULL pointers
Change-Id: If029477ef9f38ee57b3afb7901d7429319675cc5
2024-06-07 00:38:20 -04:00
William Wilgus
4829c2c894 [coverity] settings.c int_to_string() string_to_int() guard NULL deref
Change-Id: I442b574ca27cf154697202a9fce7628cbcb6752d
2024-06-07 00:25:48 -04:00
William Wilgus
dbdcd8425a [coverity] tagtree.c tagtree_exit() ensure dirlevel is within bounds
max I could get was 5 with the default tagnav cfg
but we allow user code too so might be possible to exceed the depth

Change-Id: Icf37916400b464be4f75a723d64a71cd6c4be1fb
2024-06-06 10:53:11 -04:00
William Wilgus
f9b15d951c [coverity] folder_select.c find_from_filename() guard against NULL
its pretty doubtful you wouldn't find a slash in a folder path

Change-Id: Ibf2069f37c235716d4d90aec6d68410a93c2bdc6
2024-06-05 23:38:25 -04:00
William Wilgus
c6473f4e7f [Fix Yellow] imx233_debug fix yellow
Change-Id: I2d04340a8383edd03350045085188d2191e41526
2024-06-05 20:03:02 -04:00
William Wilgus
c96d728d81 [coverity] debug-imx233.c dbg_hw_info_audio() use strlcat, fix snprintf call
technically this isn't currently causing any issue but
coverity correctly identified the potential for buffer ovfl

Change-Id: I4af462c9860c44f22d05b5b2b4c685364823d395
2024-06-05 19:16:07 -04:00
William Wilgus
d68c314cea [coverity] vuprintf.c format_double_radix() initialize data struct
it appears this is  false positive but its compliaining
about the uninitialized pointer,
 not a bad idea to initialize pointers to NULL anyway

Change-Id: I5832a19ab13971c7d55580694eef70591a3a9acb
2024-06-05 19:16:07 -04:00
William Wilgus
e54dedd8df [coverity] fat.c fatlong_parse_entry() buffer overrun, fix warning basisname
BYTES2INT16() uses [i + 0] and [i + 1] therefore 30 is the max element
available in the raw byte array of size 32

 (((uint32_t)array[pos+0] << 0) | \
 ((uint32_t)array[pos+1] << 8))

 struct /* raw byte array */
 {
     uint8_t  data[32];
 };

 basisname is only uninitialized in the . and .. dir entries
both are likely false positives but cheap enough to guard against

Change-Id: Iab3d186fed6050d2d61185071765a2c0feb9515f
2024-06-05 19:13:47 -04:00
William Wilgus
74552d5404 [coverity] RFC ata-imx31.c UDMA mode timing tables out of bounds reads
mode only goes 0-4 the original commit mixed up the index and mode
bad stuff must happen but its been here for 16 years

Change-Id: I7e69f4e2574029a6bc3cea76e8803d2d0357d9e2
2024-06-05 19:00:15 -04:00
Roman Artiukhin
2109d524e8 samsung yp-r0: Fix displaying non-Latin filenames on SD card
Supply iocharset=utf8 mount option. Otherwise, cyrillic symbols appear as question marks.

Change-Id: Ibf40a15ff429cfe2bf6e7970330870505e2470b7
2024-06-04 19:29:19 -04:00
William Wilgus
fb39d852b0 [coverity] tagtree.c tagtree_enter selected_item_history guard against overrun
Change-Id: I795b635d44b1002a557236dc8f78db79ab2c3348
2024-06-04 17:40:28 -04:00
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