summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2002-08-23 08:06:39 +0000
committerDaniel Stenberg <daniel@haxx.se>2002-08-23 08:06:39 +0000
commite6261734a025cd9053004ded80e06d2d9401d2e3 (patch)
tree4ed5a21c88c3a6e44ecee3b78a1a3114a8243b3d
parent57392acd18468a4530a63d379cc7534b2640e6b3 (diff)
downloadrockbox-e6261734a025cd9053004ded80e06d2d9401d2e3.tar.gz
rockbox-e6261734a025cd9053004ded80e06d2d9401d2e3.zip
two fixes at once:
1. If the WPS is popped up but the mpeg thread can't play any song, we must make sure to update the screen to display the "end of playlist" thing. 2. When having reached the "end of playlist" state, pressing LEFT caused a crash (due to a NULL pointer being used). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1942 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/wps.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/apps/wps.c b/apps/wps.c
index 6445b6bbf7..f2e90f397f 100644
--- a/apps/wps.c
+++ b/apps/wps.c
@@ -589,6 +589,7 @@ int wps_show(void)
589 int button; 589 int button;
590 int ff_rewind_count = 0; 590 int ff_rewind_count = 0;
591 bool ignore_keyup = true; 591 bool ignore_keyup = true;
592 bool restore = false;
592 593
593 old_release_mask = button_set_release(RELEASE_MASK); 594 old_release_mask = button_set_release(RELEASE_MASK);
594 595
@@ -609,11 +610,13 @@ int wps_show(void)
609 id3 = mpeg_current_track(); 610 id3 = mpeg_current_track();
610 draw_screen(id3); 611 draw_screen(id3);
611 } 612 }
613 else if(!id3)
614 {
615 restore = true;
616 }
612 617
613 while ( 1 ) 618 while ( 1 )
614 { 619 {
615 bool restore = false;
616
617 button = button_get_w_tmo(HZ/5); 620 button = button_get_w_tmo(HZ/5);
618 621
619 /* discard first event if it's a button release */ 622 /* discard first event if it's a button release */
@@ -814,7 +817,7 @@ int wps_show(void)
814 else 817 else
815#endif 818#endif
816 { 819 {
817 if (id3->elapsed < 3*1000) 820 if (!id3 || (id3->elapsed < 3*1000))
818 mpeg_prev(); 821 mpeg_prev();
819 else { 822 else {
820 mpeg_pause(); 823 mpeg_pause();