diff options
author | Thomas Martitz <kugel@rockbox.org> | 2011-08-23 18:43:17 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2011-08-23 18:43:17 +0000 |
commit | 9d4cd7c0bd7b2aabf578a66dd70eb9929e9ec2a3 (patch) | |
tree | 29204649147c159ced9abbc26f0f953cdd019ff3 /apps/radio | |
parent | 4d903f27c3b4efaa917e7959433330160040e5d4 (diff) |
Fix FS#12239, data abort after going from FMS to WPS.
The data abort was in find_handle() because current_handle was corrupted. This
most probably happened due to the FMS allocating Radio AA on the buffer without
resetting the buffer, corrupting buffering/playback state.
The fix is to grab buffer control explicitely.
r30308 isn't actually related, regardless of the task title.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30342 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/radio')
-rw-r--r-- | apps/radio/radioart.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/apps/radio/radioart.c b/apps/radio/radioart.c index e21b135342..4268272cdf 100644 --- a/apps/radio/radioart.c +++ b/apps/radio/radioart.c @@ -174,6 +174,12 @@ void radioart_init(bool entering_screen) radioart[i].name[0] = '\0'; } add_event(PLAYBACK_EVENT_START_PLAYBACK, true, playback_restarting_handler); + + /* grab control over buffering */ + char* buf; + size_t bufsize; + buf = audio_get_buffer(false, &bufsize); + buffering_reset(buf, bufsize); } else { |