1
0
Fork 0
forked from len0rd/rockbox

Fix FS 8753, JdGordon started it, I finished it.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16692 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Brandon Low 2008-03-18 07:01:23 +00:00
parent 6d8b827472
commit 7b1de20544

View file

@ -862,19 +862,29 @@ void car_adapter_mode_init(void)
#ifdef HAVE_HEADPHONE_DETECTION #ifdef HAVE_HEADPHONE_DETECTION
static void unplug_change(bool inserted) static void unplug_change(bool inserted)
{ {
static bool headphone_caused_pause = false;
if (global_settings.unplug_mode) if (global_settings.unplug_mode)
{ {
int audio_stat = audio_status();
if (inserted) if (inserted)
{ {
if ( global_settings.unplug_mode > 1 ) if ((audio_stat & AUDIO_STATUS_PLAY) &&
headphone_caused_pause &&
global_settings.unplug_mode > 1 )
audio_resume(); audio_resume();
backlight_on(); backlight_on();
headphone_caused_pause = false;
} else { } else {
if ((audio_stat & AUDIO_STATUS_PLAY) &&
!(audio_stat & AUDIO_STATUS_PAUSE))
{
headphone_caused_pause = true;
audio_pause(); audio_pause();
if (global_settings.unplug_rw) if (global_settings.unplug_rw)
{ {
if ( audio_current_track()->elapsed > if (audio_current_track()->elapsed >
(unsigned long)(global_settings.unplug_rw*1000)) (unsigned long)(global_settings.unplug_rw*1000))
audio_ff_rewind(audio_current_track()->elapsed - audio_ff_rewind(audio_current_track()->elapsed -
(global_settings.unplug_rw*1000)); (global_settings.unplug_rw*1000));
@ -883,6 +893,7 @@ static void unplug_change(bool inserted)
} }
} }
} }
}
} }
#endif #endif