FS#4729 - text viewer setting saving not working on ipods
Opened by Frederik (freqmod) - Saturday, 25 February 2006, 13:09 GMT
Last edited by Christi Scarborough (christi-s) - Sunday, 19 March 2006, 15:47 GMT
|
DetailsThe text viewer is not able to load settings on the ipod becase of sizeof(char*) includes the \\0 char at the end:
i have created the following fix (but i have edited the file much more so i haven't created a patch): static void viewer_load_settings(void) (around line 953): change: req_line_len = file_name_len + sizeof(viewer_settings_string); to: #if (CONFIG_CPU==PP5002) || (CONFIG_CPU==PP5020) || (CONFIG_CPU==PNX0101) req_line_len = file_name_len + sizeof(viewer_settings_string)-1;//for ipods #else req_line_len = file_name_len + sizeof(viewer_settings_string); #endif static void viewer_save_settings(void) (around line 1010): change: req_line_len = file_name_len + sizeof(viewer_settings_string); to: #if (CONFIG_CPU==PP5002) || (CONFIG_CPU==PP5020) || (CONFIG_CPU==PNX0101) req_line_len = file_name_len + sizeof(viewer_settings_string)-1;//for ipods #else req_line_len = file_name_len + sizeof(viewer_settings_string); #endif change: rb->write(settings_fd, &prefs, sizeof(prefs)); to: #if (CONFIG_CPU==PP5002) || (CONFIG_CPU==PP5020) || (CONFIG_CPU==PNX0101) rb->write(settings_fd, &prefs, sizeof(prefs)-sizeof(char));//for ipods #else rb->write(settings_fd, &prefs, sizeof(prefs)); #endif |
apart from bug with settings ...
viewer puts some character ( with my unicode font it looks like 'J' ) in places of empty strings...
this is also (as i think ) deals with sizes
for example part from .rockbox/docs/LICENSES
_______________
...followed by the license text.
**************...
_______________
looks like
_______________
...followed by the license text.
J
**************...
_______________
any idea why this is happening to ipod builds?