Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



whenwhatwherewho
Yesterday 16:19 1e6c8d2ea6: skin engine: Settings ID to pointer conversions

Convert %St tag to operate on settings pointers instead of IDs.
apps/gui/option_select.c [diff]
apps/gui/option_select.h [diff]
apps/gui/skin_engine/skin_display.c [diff]
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_tokens.c [diff]
apps/gui/skin_engine/skin_touchsupport.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
Aidan MacDonald
Yesterday 15:46 4ff97ae07c: settings: More settings ID to pointer conversions

Convert cfg_int_to_string(), cfg_to_string(), settings_write_config().
apps/gui/option_select.c [diff]
apps/gui/skin_engine/skin_tokens.c [diff]
apps/settings.c [diff]
apps/settings.h [diff]
Aidan MacDonald
Yesterday 15:16 08aa09e15d: add Richard Goedeken to CREDITS file
docs/CREDITS [diff]
Richard Goedeken
Yesterday 15:16 d06cf3ac2d: bugfix: for ErosQ/SurfansF20, reset poweroff timer when scroll wheel is moved so that we dont blank the screen while the user is scrolling through a list
firmware/target/mips/ingenic_x1000/erosqnative/button-erosqnative.c [diff]
Richard Goedeken
Yesterday 10:25 bbe3942039: settings: Settings ID to pointer for cfg_string_to_int()

Accept a pointer to struct settings_list instead of an index in the settings array. Refactor the skin engine's touchregion_setup_setting() to avoid the use of indices.
apps/gui/skin_engine/skin_parser.c [diff]
apps/settings.c [diff]
apps/settings.h [diff]
Aidan MacDonald
Yesterday 04:38 0550c64226: Bookmarks: Fix autoload return from bookmark selection

- Fix placement of parentheses from commit 780990
- Return cancel when play_bookmark fails or user declines to erase dynamic playlist after warning
- Go back to Playlist Catalogue when user cancels out of screen
apps/bookmark.c [diff]
apps/playlist_catalog.c [diff]
Christian Soffke
Saturday 13:13 879b5dae39: Fix red 8f582c90de

global_settings is not defined when building the database tool. Add a path buffer in tc_stat to fix this. This also avoids race conditions that may occur if changing the path setting at runtime.
apps/tagcache.c [diff]
apps/tagcache.h [diff]
Aidan MacDonald
Saturday 12:41 3957aa8720: RFC BugFix tagtree.c reload data abort

TagNav.lua adds Reload to the Custom View menu of tagnav to allow users to make new search queries on the fly previously you had to reboot the device to do this

I was getting a data abort prior to calling tagnav_init now but it worked fine if I copy pasted the contents of the init function

I'm not sure how this fixed it but making a static init function makes it work as intended is it a race some weird thing with the compiler??

Ideas??
apps/tagtree.c [diff]
William Wilgus
Saturday 12:29 8f582c90de: tagcache: add a setting for customizing the database path

Add a new setting,

database path: /path/to/folder

to change where the database files are stored, which allows it to be shared by multiple builds when using multiboot. This avoids the need to maintain a separate copy of the database for each build. This setting can only be set from the config file; it has no menu option yet (due to lack of a GUI to pick the directory).
apps/settings.h [diff]
apps/settings_list.c [diff]
apps/tagcache.c [diff]
manual/appendix/config_file_options.tex [diff]
Aidan MacDonald
Saturday 11:49 f033fd390e: Fix Red playlist update a few functions
apps/playlist.c [diff]
apps/playlist.h [diff]
William Wilgus
Saturday 11:34 98c7505c60: tagcache: move TAGCACHE_STATEFILE define to .c file

Provide a function to remove the statefile so that external users of this define can call that instead.
apps/main.c [diff]
apps/tagcache.c [diff]
apps/tagcache.h [diff]
apps/tree.c [diff]
Aidan MacDonald
Saturday 11:28 03c225fe54: playlist.c clean-up and organize

No functional changes
apps/playlist.c [diff]
apps/playlist.h [diff]
William Wilgus
Saturday 11:00 90dc64da32: tagcache: remove TAGCACHE_STRICT_ALIGN flag

This has been defined to 1 since forever, so the last remaining check presumably isn't catching anything.
apps/tagcache.c [diff]
Aidan MacDonald
Saturday 11:00 b6c2b54e01: tagcache: move most defines to .c file

Most of the defines in the header file are internal to the tagcache and therefore should not be exposed in the header, to make it clear that outside code does not depend on the values.
apps/tagcache.c [diff]
apps/tagcache.h [diff]
Aidan MacDonald
Friday 03:29 177a15b2ed: playlist_catalog remove static playlist_dir in favor of generation at runtime

this needs tested by the heavy playlist users

with the addition of initialize_catalog_buf there shouldn't be any stack overflow concerns since we are no longer creating another max_path sized buffer when one is already available this also simplifies the code a bit

rather than carrying around the playlist directory just generate it on the fly copies the directory to the supplied buffer

add catbroswe_status to keep track of what browse context(s) are currently in use
apps/menus/playlist_menu.c [diff]
apps/playlist_catalog.c [diff]
apps/playlist_catalog.h [diff]
William Wilgus
Thursday 22:56 773fa7874d: RFC playlist.c add_indices_to_playlist() seek back to start of file

get_filename() changes the seek pos with out restoring it seek back to the beginning or after the BOM if utf8
-- the other option is to open our own file descriptor this will remove the need for the mutex but it would no longer block get_filename from getting potential stale / bad data
apps/playlist.c [diff]
William Wilgus
Thursday 19:24 d7557e8da8: settings: Update doc comment for struct settings_list::cfg_vals

cfg_vals has not been used in conjunction with F_T_UCHARPTR for quite a while.
apps/settings_list.h [diff]
Aidan MacDonald
Thursday 19:24 528dd0b03d: settings: Remove redundant lang_id check for F_PADTITLE settings

All the F_PADTITLE settings use a lang string so it's safe to assume the title (which is usually from the setting's lang_id) is ok. Not like it's very useful or safe to show the cfg_vals, anyway...
apps/menu.c [diff]
Aidan MacDonald
Thursday 19:00 fb0757b913: settings: Remove F_ALLOW_ARBITRARY_VALS from hotkey settings

The hotkey settings come from a fixed enum, arbitrary values are not supported. It's not possible to use choice settings for them because some enum values are only used in the WPS, and some are only used in the tree.
apps/settings_list.c [diff]
Aidan MacDonald
Thursday 18:59 8aa3b22160: settings: Update int fallback check for settings with cfg_vals

This atoi() was added long ago in commit d490f441, and it looks like it's intended to allow arbitrary values in table settings. These table settings have some symbolic values (eg. off, on) but are otherwise int-valued.

As far as I can see the only settings that can take this branch are all table settings with F_ALLOW_ARBITRARY_VALS. It doesn't make a lot of sense to accept random integers without that flag, so make the atoi() conversion dependent on it.
apps/settings.c [diff]
Aidan MacDonald
Thursday 18:36 6346be51a3: settings: Clean up and simplify settings_load_config()

Use find_setting_by_cfgname() instead of doing it manually. Reduce the excessive level of indentation.
apps/settings.c [diff]
Aidan MacDonald
Thursday 18:07 5b1dd64f50: settings: Add helper function for handling filename settings

The old inline implementation was buggy -- it didn't check the suffix was actually at the end of the string before stripping it, and didn't check for truncation. This version also avoids using an extra buffer.
apps/settings.c [diff]
apps/settings.h [diff]
Aidan MacDonald
Thursday 18:07 afa58ef277: settings: Remove unused INT_SETTING_W_CFGVALS

This hasn't been used for quite some time; it appears to have been obsoleted by table settings.
apps/settings_list.c [diff]
Aidan MacDonald
Thursday 17:36 7819a06d74: Add rectangle utility functions
firmware/SOURCES [diff]
firmware/common/rectangle.c [new]
firmware/export/rectangle.h [new]
Aidan MacDonald
Thursday 17:11 52ca658069: x1000: Add support for DS35x1GAxxx flash chips

This flash chip is found on some Surfans F20 units. For our purposes it's the same as the GD5F1GA4xExx so just #define an alias instead of adding a whole new chip struct.
firmware/target/mips/ingenic_x1000/nand-x1000.c [diff]
Aidan MacDonald
Thursday 04:15 c9c340704f: playlist_create fix race condition

I'm pretty sure this is a very old bug I traced it down to the current_playlist getting changed out from under add_indices_to_playlist causing myriad of issues from buffer full to invalid control file to shifting indices

this only appears to happen with the dircache on

I still get an incorrect resume state with the wrong song very rarely -- turns out get_filename seeks the file FIXED

Some debugging left in for now till we can verify there are no other instances
apps/playlist.c [diff]
William Wilgus
Wednesday 05:01 0ba3392b9f: Bug Fix bookmark.c fix resume_info overwritten

fix a bug where when 'most recent bookmarks' was enabled the next bookmark file written would get the info from the last 'most recent' bookmark instead of the current bookmark

also removed the global resume_info struct in favor of local variables

added verification of the resumed track
apps/bookmark.c [diff]
William Wilgus
27th Nov 14:15 0c7394e39a: ata: Improve heuristics for detecting SSDs

mSATA devices should be new enough to report their form factor proprerly
firmware/drivers/ata.c [diff]
Solomon Peachy
27th Nov 07:05 3f4e55a872: bookmark.c fix bookmark.c fix filename generator #2

strlcpy returns the size of the string it tried to create so we still need strlen

since we know what the sizes are of the strings just check for overflow first and use strmemccpy

fix bufsz on playlist_get_name()
apps/bookmark.c [diff]
William Wilgus
27th Nov 06:20 65db4acabe: pcf56065: Fix a compile warning uncovered by GCC8

Basically, use '!' instead of '~' on bools.
firmware/drivers/rtc/rtc_pcf50605.c [diff]
Solomon Peachy
27th Nov 01:51 b11777b06c: bookmark.c fix off by one error in filename generator

strlcpy expects the buffer size so the name gets truncated by one character
apps/bookmark.c [diff]
William Wilgus
26th Nov 16:20 4ecf3970a6: Playlist Catalogue: Return to opened playlists

The playlist catalogue now remembers when you left a playlist open and will return to it automatically.
apps/playlist_catalog.c [diff]
Christian Soffke
26th Nov 16:20 098a8fd334: Playlist Catalogue: Restore selection in playlist

Saves and restores the selected item in your most-recently accessed playlist, similar to Database and File Browser.
apps/menus/playlist_menu.c [diff]
apps/onplay.c [diff]
apps/playlist_catalog.c [diff]
apps/playlist_viewer.c [diff]
apps/playlist_viewer.h [diff]
Christian Soffke
26th Nov 04:39 88ecaf2b8c: bookmark.c remove static bookmark buffer
apps/bookmark.c [diff]
William Wilgus
25th Nov 04:44 853d70e938: Fix Red confirm_delete, CHECKWPS & DBTOOL
apps/misc.c [diff]
William Wilgus
25th Nov 04:09 71934d4c16: move confirm delete prompt to misc.c
apps/bookmark.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
apps/onplay.c [diff]
apps/shortcuts.c [diff]
William Wilgus
25th Nov 03:30 3a22322ab7: bookmark.c parse_bookmark remove redundant conditional

we can just use the buffer not being NULL to decide
apps/bookmark.c [diff]
William Wilgus
25th Nov 03:00 780990fe5d: bookmark.c remove some global buffers

refactor to allow removing some of the static buffers
apps/bookmark.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
William Wilgus
25th Nov 01:08 8b522b8973: bookmark.c clean-up

No functional changes
apps/bookmark.c [diff]
William Wilgus
24th Nov 04:55 1e6d643cfb: Fix Red lib/helper.h

missing brightness defines
apps/plugins/lib/helper.h [diff]
William Wilgus
24th Nov 04:00 97a82ee3ec: plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions lessen the ifdef hell
apps/plugins/2048.c [diff]
apps/plugins/brickmania.c [diff]
apps/plugins/chopper.c [diff]
apps/plugins/credits.c [diff]
apps/plugins/demystify.c [diff]
apps/plugins/doom/rockdoom.c [diff]
apps/plugins/fft/fft.c [diff]
apps/plugins/fire.c [diff]
apps/plugins/fireworks.c [diff]
apps/plugins/imageviewer/imageviewer.c [diff]
apps/plugins/lamp.c [diff]
apps/plugins/lib/helper.c [diff]
apps/plugins/lib/helper.h [diff]
apps/plugins/maze.c [diff]
apps/plugins/mazezam.c [diff]
apps/plugins/mpegplayer/mpegplayer.c [diff]
apps/plugins/oscilloscope.c [diff]
apps/plugins/pacbox/pacbox.c [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
apps/plugins/plasma.c [diff]
apps/plugins/pong.c [diff]
apps/plugins/puzzles/rockbox.c [diff]
apps/plugins/resistor.c [diff]
apps/plugins/rockblox.c [diff]
apps/plugins/rockboy/menu.c [diff]
apps/plugins/rockboy/rockboy.c [diff]
apps/plugins/rocklife.c [diff]
apps/plugins/sdl/main.c [diff]
apps/plugins/spacerocks.c [diff]
apps/plugins/speedread.c [diff]
...and 8 more files.
William Wilgus
24th Nov 03:09 3745c813f9: misc.c open_pathfmt caller supplied buffer

Amachronic raised concern about open() blocking causing a static buf to get overwritten in multiple calls its prudent to just have the caller supply the buffer to minimize stack issues later
apps/bookmark.c [diff]
apps/debug_menu.c [diff]
apps/filetypes.c [diff]
apps/gui/icon.c [diff]
apps/logfdisp.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
apps/tagcache.c [diff]
apps/talk.c [diff]
William Wilgus
24th Nov 02:14 80b8b13544: BUG FIX settings_list fix un-macro'd int_settings for backlight & contrast

missed these
apps/settings_list.c [diff]
William Wilgus
23rd Nov 16:01 8379c6eb07: tagtree remove unneeded strlen

unfortunately most of the overhead in searching for <Untagged> occurs in reading of entries so changing searching the resulting string faster doesn't do much good but any we don't need this strlen call since its already been computed
apps/tagtree.c [diff]
William Wilgus
23rd Nov 15:08 ec1611dfa6: Add a comment about the ordering of 'enum playmode'
apps/status.h [diff]
Aidan MacDonald
23rd Nov 15:08 9f09cdc9b8: skin engine: Streamline handling of the %mp tag a little

current_playmode() returns a value from 'enum playmode' and we can take advantage of the enum values to simplify the code.
apps/gui/skin_engine/skin_tokens.c [diff]
Aidan MacDonald
23rd Nov 15:07 3815ef8050: skin engine: Remove albumart viewport field

The viewport field in albumart is unnecessary, but for a different reason than eg. the progressbar was. The skin engine draws images by going over a global list of images shared between all viewports. Prior to drawing a viewport, every image is marked "not displayed." When an image display tag is encountered during rendering this mark is set to the index of the subimage to be displayed.

The albumart is handled similarily, by setting a handle to -1 and then updating it when the %Cd tag is encountered. The albumart is not drawn unless the handle is set to >= 0 by the %Cd tag. So we don't need to track or check viewports at all, because only the viewport that contains the %Cd tag will ever draw the albumart.
apps/gui/skin_engine/skin_display.c [diff]
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
Aidan MacDonald
23rd Nov 15:06 830436a282: skin engine: Remove viewport_colour viewport field

Yet again, no need to store the viewport because we already know it -- and this time the render code is obviously relying on that assumption.
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
Aidan MacDonald
23rd Nov 14:44 9368844ad1: skin engine: Remove progressbar viewport field

Again, we don't need to store the viewport in the progressbar struct because it's known at render time.
apps/gui/skin_engine/skin_display.c [diff]
apps/gui/skin_engine/skin_display.h [diff]
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
Aidan MacDonald
23rd Nov 06:24 f242b0ec6c: Settings/System/Plugins: Go to WPS when ACTION_TREEE_WPS is pressed

Used to go to root menu before.
apps/root_menu.c [diff]
Christian Soffke
23rd Nov 06:24 17cae50497: PictureFlow: Add hotkeys for changing sorting on iPods / Update manual

Adjust current sorting by pressing both the Select button and Menu (or Play) at the same time.
apps/plugins/pictureflow/pictureflow.c [diff]
manual/plugins/pictureflow.tex [diff]
Christian Soffke
23rd Nov 06:22 0c7f66ab5f: Playlist Viewer: Display playlist name in title
apps/playlist_viewer.c [diff]
Christian Soffke
23rd Nov 06:22 6bc443f474: Hotkeys: Add placeholder for function return value

Seems a bit clearer to me than redefining the meaning of ONPLAY_OK in this context, which was easy to miss.

Fixes the return value for the bookmark_create_menu hotkey, too. It was previously mapped to ONPLAY_OK in case the function failed, and to ONPLAY_RELOAD_DIR if it succeeded. This had no ill effect - or any effect – since either of the values were disregarded by the WPS when executing a hotkey.

Return values of playlist_insert_shuffled also had no effect (by design, apparently, see commit 482b45b). Use ONPLAY_FUNC_RETURN in hotkey_assignment.

Behavior hasn't changed, it's only been made more explicit.
apps/onplay.c [diff]
apps/onplay.h [diff]
Christian Soffke
23rd Nov 05:51 0d355a9c47: filetree.c add back SORT_ALPHA_REVERSED

this is used for the playlist folder advance
apps/filetree.c [diff]
William Wilgus
23rd Nov 00:14 263cc13985: tagtree.c move sort_inverse out of compare function
apps/tagtree.c [diff]
William Wilgus
22nd Nov 23:38 2a9482ad7c: filetree.c move sort functions out of cmp function for SORT_ALPHA

move sort function decision out of the compare function
apps/filetree.c [diff]
William Wilgus
22nd Nov 20:19 1561b4ec9a: filetypes.c clean-up

make icon a voice struct one
apps/filetypes.c [diff]
apps/filetypes.h [diff]
apps/tree.c [diff]
William Wilgus
22nd Nov 07:19 dc47bf8ae2: BUG FIX settings_list.c

fix dumb mistake reordered mavro args instead of just struct args
apps/settings_list.c [diff]
William Wilgus
22nd Nov 04:28 5240202226: filetypes.c put attr mask back

not totally sure of the implications but this mask should be here
apps/filetypes.c [diff]
William Wilgus
22nd Nov 04:24 b40dff510a: cuesheet.c guard against invalid digits causing underflow on field ASAN

is digit checks for invalid fields but could possibly check field = -1
apps/cuesheet.c [diff]
William Wilgus
22nd Nov 04:05 19aa4ca276: tree.c spell names AFTER voicing filetype
apps/tree.c [diff]
William Wilgus
22nd Nov 03:54 d077fec5f1: tree.c move voice filetypes to its own conditional
apps/tree.c [diff]
William Wilgus
22nd Nov 03:52 efdc6feddb: move inbuilt_filetypes.voiceclip to a separate struct

there are a lot of duplicated voiceclips in the inbuilt_filetypes struct its already looked up so deduplicate
apps/filetypes.c [diff]
apps/filetypes.h [diff]
apps/tree.c [diff]
William Wilgus
22nd Nov 02:27 2056878e46: move inbuilt_filetypes.icon to a separate struct

there are a lot of duplicated icons in the inbuilt_filetypes struct its only used at load so deduplicate and look-up by attr
apps/filetypes.c [diff]
apps/filetypes.h [diff]
William Wilgus
21st Nov 05:25 658cc95885: remove some sprintf putsxy calls in favor of putsxyf

we now have putsxyf in screens[] so no need for a separate buffer in these cases
apps/gui/color_picker.c [diff]
apps/gui/line.c [diff]
apps/menus/eq_menu.c [diff]
William Wilgus
21st Nov 04:37 eb9b3513fa: Remove strtok_r.c

strtokspn emulates the original libc function
firmware/SOURCES [diff]
firmware/libc/strtok.c [deleted]
William Wilgus
20th Nov 18:57 0661784469: make int_setting step & unit int16_t

since int_setting is the largest struct in the union of settings saving 32 bytes adds up over every setting

frees ~200 bytes
apps/menus/eq_menu.c [diff]
apps/menus/sound_menu.c [diff]
apps/settings.c [diff]
apps/settings_list.c [diff]
apps/settings_list.h [diff]
William Wilgus
20th Nov 05:41 b7603adc64: Properties: Refactoring & Minor fix

- Extract functions for
* determining whether it's a file or dir
* showing stats for dir or file without id3

- Remove typedef for struct
- Fix unit string not being displayed correctly during scanning
(use %s instead of %cB)
apps/plugins/properties.c [diff]
Christian Soffke
20th Nov 05:00 da2eaf3bf7: misc.c open_pathfmt fix yellow
apps/misc.c [diff]
William Wilgus
20th Nov 04:13 e7e20fab1b: create function open_pathfmt() to allow printf formatting on open()

save some space by allowing printf formatting directly rather than having a buffer and using sprintf
apps/debug_menu.c [diff]
apps/filetypes.c [diff]
apps/gui/icon.c [diff]
apps/logfdisp.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
apps/tagcache.c [diff]
apps/talk.c [diff]
William Wilgus
19th Nov 21:19 8fe42c43c6: WPS plugin hotkey: Fix UB

HOTKEY_PLUGIN action resulted in return value of void function being assigned and then returned by execute_hotkey.
apps/onplay.c [diff]
Christian Soffke
19th Nov 16:08 dcde5aa89d: Database & Playlist Viewer: Fix return to WPS from plugin

After calling up PictureFlow from the database or from the Playlist Viewer, you would not be returned to the WPS as would be expected when picking a new song, selecting
"Go to WPS" or pressing the WPS action button.
apps/filetypes.c [diff]
apps/onplay.c [diff]
apps/playlist_viewer.c [diff]
Christian Soffke
19th Nov 12:39 b3a464c9d1: Playlist Viewer & Catalogue: Go to WPS when ACTION_TREE_WPS is pressed
apps/playlist_catalog.c [diff]
apps/playlist_viewer.c [diff]
Christian Soffke
19th Nov 09:01 3d34140cfb: Fix return to root after selecting items from playlist viewer

When selecting an item, Rockbox only checked that playback was stopped before entering the viewer and went to the WPS if music had started playing afterwards, but returned to the root menu otherwise

The WPS will now be displayed whenever a new item has been selected, even if audio was paused or playing before.

boomark_autoload required slight adjustments to its return values, so that the WPS would not be opened after a user cancels out of the bookmark selection screen for a playlist, since it previously returned true in that case, too.
apps/bookmark.c [diff]
apps/bookmark.h [diff]
apps/filetree.c [diff]
apps/onplay.c [diff]
apps/playlist_catalog.c [diff]
apps/playlist_catalog.h [diff]
apps/playlist_viewer.c [diff]
apps/root_menu.c [diff]
Christian Soffke
19th Nov 07:13 3b1230b365: talk.c add busy loop to talk_spell

talk spell can lose the remainder of the words on longer sequences
apps/talk.c [diff]
William Wilgus
19th Nov 07:12 b0ccb1b95f: talk.c clean up
apps/talk.c [diff]
apps/talk.h [diff]
William Wilgus
17th Nov 16:12 38687821b2: skin engine: Remove playlistviewer viewport field

We already know the viewport at render time (I think... at least this seems to be the case for themes I tested) so there's no need to store a pointer to the viewport.
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
Aidan MacDonald
17th Nov 16:12 7de16eee26: viewportmanager: Fix missing void in function definition
apps/gui/viewport.c [diff]
Aidan MacDonald
17th Nov 16:12 15b36a02b1: Remove get_viewport_default_colour()

The function isn't used except for the skin engine's %Vf/%Vb tags, so inline it there and remove the separate function.
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/viewport.c [diff]
apps/gui/viewport.h [diff]
Aidan MacDonald
17th Nov 10:36 016090b2a4: Bug fix multiboot.c get_redirect_dir didn't reach index 0

add_path[0] was never reached
firmware/common/multiboot.c [diff]
William Wilgus
17th Nov 09:43 7b3e2f6f85: fix yellow iap-core.c
apps/iap/iap-core.c [diff]
William Wilgus
17th Nov 09:15 00f915d92e: strnatcmp.c use a fn pointer to call strcmp/strcasecmp
firmware/common/strnatcmp.c [diff]
William Wilgus
17th Nov 06:54 972810f6cf: strlcpy finish cleanup

remove strlcpy & strlcat from string.h

document suspicious strlcpy call

convert strlcat.h users to string-extra
apps/misc.c [diff]
firmware/common/file_internal.c [diff]
firmware/common/strlcpy.c [diff]
firmware/common/zip.c [diff]
firmware/drivers/fat.c [diff]
firmware/libc/include/string.h [diff]
lib/rbcodec/metadata/replaygain.c [diff]
William Wilgus
17th Nov 06:43 0b7a387671: open_plugins add name when plugin can't open & check LANG_LAST_INDEX_IN_ARRAY

can't open '' was confusing for users so pass the key to open plugin in theory you could have a plugin that defaulted to these lang_ids run but its good enough to tell the user what failed to open IMO

lang_id changes mess with open_plugin since it uses them as look-up keys so add checks for LANG_LAST_INDEX_IN_ARRAY to the checksum

the plugin now removes entries with an invalid checksum

devices with harddrives only append their .dat file so have them skip entries with invalid checksums and only notify user if a valid entry wasn't found
(these users can run the open_plugins plugin to remove invalid entries)
apps/open_plugin.c [diff]
apps/open_plugin.h [diff]
apps/plugins/open_plugins.c [diff]
apps/root_menu.c [diff]
William Wilgus
17th Nov 01:54 4c3937591c: lua Fix potential event stack OVFL

you could return values in the event callbacks that would never be processed this would eventually cause a lua stack overflow

settop(0) eats all return values (if any)
apps/plugins/lua/rocklib_events.c [diff]
William Wilgus
16th Nov 11:48 2f278af760: codecs: alac: Improve resume accuracy and clean up rounding errors

Resume by offset was obviously inaccurate for ALAC -- it tried to convert the offset to an elapsed time using the approximate bitrate, which is going to be wrong for VBR files. This became a problem since commit 26ffcd8f9f restored the ability to resume by offset.

It turns out that m4a_seek_raw() has terrible resolution since it can only seek to chunk boundaries, and lies about the real sample position; basically the same issue that affected seeking described in commit 4dd3c2b33e. Resuming by offset is still not very accurate because of this. Prefer to resume by time first, which is normally highly accurate (and never worse than offset) but use the file offset if it's the only thing we have.

There were a couple time calculations still using 32-bit math, so clean those up too to reduce issues due to rounding errors.
lib/rbcodec/codecs/alac.c [diff]
Aidan MacDonald
16th Nov 11:48 ea61347a0b: codecs: aac: Prefer to resume by time instead of offset

m4a_seek_raw() is relatively inaccurate, so time-based resume should be preferred.
lib/rbcodec/codecs/aac.c [diff]
Aidan MacDonald
16th Nov 11:47 5fdd491ceb: playlist: reduce memory usage for loading playlists

There's probably little benefit to using core_alloc_maximum() for loading playlists since they are parsed incrementally. I/O speed does not increase with increased read sizes beyond a certain point. Read by 32 KiB chunks since that is what the buffering thread does. Fall back to core_alloc_maximum() if a small allocation fails so that buflib will try harder to free up space.
apps/playlist.c [diff]
Aidan MacDonald
16th Nov 06:49 dfa1539b13: Bug Fix test_viewports.c call scroll_stop before changing viewports
apps/plugins/test_viewports.c [diff]
William Wilgus
16th Nov 05:36 7733abce29: strlcat use strlcpy for the copy part
firmware/common/strlcat.c [diff]
William Wilgus
16th Nov 04:33 28af87526d: misc.c split_string replace with strtok_r

there isn't much difference from this function to strtok_r

now places a NULL in the last vector space permitting as well
apps/misc.c [diff]
William Wilgus
16th Nov 00:17 3ad8c0ad7b: fix another non shadowed variable

another variable that shouldn't have been removed in 034b6d5b
apps/tagcache.c [diff]
William Wilgus
15th Nov 21:43 be65ec2338: Fix menus in Settings

Commit 034b6d5b prevented other Settings menus on the same menu level from being displayed after accessing one item's context menu
apps/menu.c [diff]
Christian Soffke
15th Nov 14:56 0458951464: translations: Update US English "translation"
apps/lang/english-us.lang [diff]
Solomon Peachy
15th Nov 14:28 cca954e427: FS #13363: Update Serbian Translation (Anonymous 'bugmenot' user)
apps/lang/srpski.lang [diff]
Solomon Peachy
15th Nov 14:28 90f6aa2afa: FS13362: Update Dutch translation (Anonymous user 'bugmenot')
apps/lang/nederlands.lang [diff]
Solomon Peachy
15th Nov 14:23 e68b727f4f: Add more space for Time Elapsed/Remaining on Rocker WPS

Similair to 41934360. To display 20+ hours long audiobooks without overlaps.

Removed tag duplicates
wps/cabbiev2.128x160x16.wps [diff]
roman.artiukhin
15th Nov 14:20 73b1e30bb0: skin engine: Reduce scope of internal wps_data struct

A bunch of public API calls take a wps_data struct argument, but that's an internal type that doesn't have a direct getter. Instead the skin engine provides a gui_wps struct as a way to refer to a particular skin instance. Use that instead of wps_data in the public API.
apps/gui/skin_engine/skin_display.c [diff]
apps/gui/skin_engine/skin_engine.h [diff]
apps/gui/skin_engine/skin_touchsupport.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
apps/gui/statusbar-skinned.c [diff]
apps/gui/statusbar-skinned.h [diff]
apps/gui/wps.c [diff]
apps/radio/radio_skin.c [diff]
Aidan MacDonald
15th Nov 06:58 45bd4c7220: Fix last of red for strmemccpy
lib/rbcodec/test/SOURCES [diff]
William Wilgus
15th Nov 06:24 687767bd8f: convert a few more strlcpy to strmemccpy calls Fix Red and Yellow

albumart is imported to plugins just use a macro substitution for now
apps/iap/iap-lingo4.c [diff]
apps/onplay.c [diff]
apps/playlist.c [diff]
apps/recorder/albumart.c [diff]
apps/tree.c [diff]
William Wilgus
15th Nov 05:38 aea324b746: Fix red strmemccpy CheckWps & Database
tools/checkwps/SOURCES [diff]
tools/database/SOURCES [diff]
William Wilgus
15th Nov 04:56 f6c719d7ec: replace strlcpy with strmemccpy

replace applicable calls to strlcpy with calls to strmemccpy which null terminates on truncation

in theory the strmemccpy calls should be slightly faster since they don't traverse the rest of the source string on truncation but I seriously doubt there is too much of that going on in the code base
apps/bookmark.c [diff]
apps/buffering.c [diff]
apps/cuesheet.c [diff]
apps/debug_menu.c [diff]
apps/gui/folder_select.c [diff]
apps/gui/option_select.c [diff]
apps/gui/skin_engine/skin_backdrops.c [diff]
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_tokens.c [diff]
apps/gui/statusbar-skinned.c [diff]
apps/hosted/android/keyboard.c [diff]
apps/iap/iap-lingo4.c [diff]
apps/menus/eq_menu.c [diff]
apps/misc.c [diff]
apps/onplay.c [diff]
apps/open_plugin.c [diff]
apps/playlist.c [diff]
apps/playlist_catalog.c [diff]
apps/playlist_viewer.c [diff]
apps/radio/presets.c [diff]
apps/radio/radioart.c [diff]
apps/recorder/albumart.c [diff]
apps/recorder/keyboard.c [diff]
apps/recorder/pcm_record.c [diff]
apps/root_menu.c [diff]
apps/screens.c [diff]
apps/settings.c [diff]
apps/settings_list.c [diff]
apps/shortcuts.c [diff]
apps/tagcache.c [diff]
...and 13 more files.
William Wilgus
15th Nov 04:56 b25a9d8f99: add memccpy.c

Not sure if this is worth the added bin size yet but I will see where I can use it to try and make it worth it
apps/debug_menu.c [diff]
apps/playlist_viewer.c [diff]
apps/screens.c [diff]
firmware/SOURCES [diff]
firmware/libc/include/string.h [diff]
firmware/libc/memccpy.c [new]
William Wilgus
14th Nov 14:01 034b6d5bfb: Remove some shadowed variables identified by -Wshadow

there are plenty more but these are the low hanging fruit
apps/cuesheet.c [diff]
apps/filetree.c [diff]
apps/gui/folder_select.c [diff]
apps/menu.c [diff]
apps/recorder/keyboard.c [diff]
apps/tagcache.c [diff]
apps/tagtree.c [diff]
apps/talk.c [diff]
firmware/drivers/lcd-color-common.c [diff]
William Wilgus
14th Nov 13:21 f94a14b859: increase the number of file & directory handles for devices with more ram
firmware/include/fs_defines.h [diff]
William Wilgus
14th Nov 04:47 c088a9453d: Database: Restore selection in lower menu levels

The database only remembered what you'd selected when ascending the menu hierarchy again from a lower level.

Now it restores a previous selection going in the other direction as well, when you enter a new menu, as long as the selection at the current level hasn't changed.
apps/tagtree.c [diff]
apps/tagtree.h [diff]
apps/tree.c [diff]
Christian Soffke
14th Nov 04:36 e6ab74d4ac: Database: Eliminate redundant list item selection

- gui_synclist_select_item will be called in the update_dir function by dirbrowse()

- it is unnecessary to call when the tables opened by tagtree_enter are not being displayed but are only being used for inserting table contents into the current playlist.
apps/tagtree.c [diff]
Christian Soffke
14th Nov 04:35 97936e0661: Database: Fix problematic dirlevel reset

Dirlevel is restored in this error case without exiting the previously entered tables.
apps/tagtree.c [diff]
Christian Soffke
13th Nov 06:14 a634557a88: fix strptokspn, add strcspn, fix splash.c

fix off by 1 error in strptokspn, add strcspn, fix fallout in splash.c
apps/gui/splash.c [diff]
apps/playback.c [diff]
firmware/SOURCES [diff]
firmware/common/strptokspn.c [diff]
firmware/libc/strcspn.c [new]
William Wilgus
12th Nov 14:13 ffe2df2e92: Implement Rewind across tracks functionality

Useful feature for audiobooks. To rewind from the end of the previous track - press rewind at the very beginning of the current track. So if you are in the middle of the track - first rewind till beginning then release and press rewind button again (Playback Settings -> Rewind Across Tracks option should be enabled)

Fixes FS #13290
apps/gui/wps.c [diff]
apps/lang/english.lang [diff]
apps/menus/playback_menu.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
docs/CREDITS [diff]
manual/appendix/config_file_options.tex [diff]
manual/configure_rockbox/playback_options.tex [diff]
roman.artiukhin
12th Nov 12:15 30ec10c790: splash.c Fix yellow const char
apps/gui/splash.c [diff]
William Wilgus
12th Nov 11:22 c756a8a89d: make splash split on control characters

splits on spaces also considers \r\n\f\v\t as mandatory breaks

I'm still working on the strptokspn function my goal is to use it directly rather than storing the matched char and modifying the source string with \0 in order to tokenize the output
--Done
apps/gui/splash.c [diff]
apps/screen_access.c [diff]
apps/screen_access.h [diff]
firmware/SOURCES [diff]
firmware/common/strptokspn.c [new]
firmware/export/font.h [diff]
firmware/font.c [diff]
firmware/include/strptokspn_r.h [new]
William Wilgus
11th Nov 23:36 dd1fbd51fc: TagTree Show file name for tag_title [UNTAGGED] BugFix

limit result to tags that only show <UNTAGGED>
apps/tagtree.c [diff]
William Wilgus
10th Nov 12:08 06f0465158: skin engine: Remove touchregion argument from skin_get_touchaction

Nobody uses the argument, and it exposes internals unnecessarily.
apps/gui/skin_engine/skin_engine.h [diff]
apps/gui/skin_engine/skin_touchsupport.c [diff]
apps/gui/statusbar-skinned.c [diff]
apps/gui/wps.c [diff]
apps/radio/radio_skin.c [diff]
Aidan MacDonald
10th Nov 11:37 56389b21b1: skin engine: Remove gui_img viewport field

This is set but never used.
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
Aidan MacDonald
10th Nov 11:37 2c1adac3f8: skin engine: Remove unused viewport_change flag in skin rendering
apps/gui/skin_engine/skin_render.c [diff]
Aidan MacDonald
10th Nov 11:37 37da608f84: skin engine: Remove weird special casing for Onda VX747

I have no idea what bug this could possibly "fix", and nothing looks different on the sim after removing it. As far as I can tell the Onda has no unique features that could cause the skin engine to act flaky, so I'm willing to bet this workaround isn't needed.
apps/gui/skin_engine/skin_render.c [diff]
Aidan MacDonald
9th Nov 16:58 c2220a3b50: eq_menu cleanup some getstringsize calls

remove some unused calls and save some space by only grabbing font h once it doesn't change throughout the function
apps/menus/eq_menu.c [diff]
William Wilgus
9th Nov 16:22 e8aaee4979: misc.c show_logo remove 'ver.' when screen is too small

since its too early for the scroll engine just remove 'ver. '

cleanup the getstringsize calls, only need to calculate it once
apps/misc.c [diff]
William Wilgus

Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy