changeset 29851:eaa7bfc52c2c

Set the EOF flag when dvdnav reached the end of the requested title. Otherwise it would just hang, either at the menu or trying to play the last played frame as a still frame.
author reimar
date Wed, 11 Nov 2009 09:09:08 +0000
parents 93947ce0e2cb
children 32d288088a0f
files stream/stream_dvdnav.c
diffstat 1 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/stream/stream_dvdnav.c	Wed Nov 11 09:03:39 2009 +0000
+++ b/stream/stream_dvdnav.c	Wed Nov 11 09:09:08 2009 +0000
@@ -349,8 +349,10 @@
           if(dvdnav_current_title_info(priv->dvdnav, &tit, &part) == DVDNAV_STATUS_OK) {
             mp_msg(MSGT_CPLAYER,MSGL_V, "\r\nDVDNAV, NEW TITLE %d\r\n", tit);
             dvdnav_get_highlight (priv, 0);
-            if(priv->title > 0 && tit != priv->title)
+            if(priv->title > 0 && tit != priv->title) {
+              priv->state |= NAV_FLAG_EOF;
               return 0;
+            }
           }
           break;
         }
@@ -364,8 +366,10 @@
             priv->state |= NAV_FLAG_WAIT_READ;
           if(priv->title > 0 && dvd_last_chapter > 0) {
             int tit=0, part=0;
-            if(dvdnav_current_title_info(priv->dvdnav, &tit, &part) == DVDNAV_STATUS_OK && part > dvd_last_chapter)
+            if(dvdnav_current_title_info(priv->dvdnav, &tit, &part) == DVDNAV_STATUS_OK && part > dvd_last_chapter) {
+              priv->state |= NAV_FLAG_EOF;
               return 0;
+            }
           }
           dvdnav_get_highlight (priv, 1);
         }