[vlc-commits] access: drop current block when seeking to title/seekpoint

Rémi Denis-Courmont git at videolan.org
Wed Sep 2 21:54:15 CEST 2015


vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Wed Sep  2 22:51:47 2015 +0300| [0c14f083b576b8d96f300536d31f45262344621a] | committer: Rémi Denis-Courmont

access: drop current block when seeking to title/seekpoint

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0c14f083b576b8d96f300536d31f45262344621a
---

 src/input/access.c |   17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/input/access.c b/src/input/access.c
index a4f5e14..14297ed 100644
--- a/src/input/access.c
+++ b/src/input/access.c
@@ -311,13 +311,26 @@ static int AStreamControl(stream_t *s, int cmd, va_list args)
         case STREAM_GET_CONTENT_TYPE:
         case STREAM_GET_SIGNAL:
         case STREAM_SET_PAUSE_STATE:
-        case STREAM_SET_TITLE:
-        case STREAM_SET_SEEKPOINT:
         case STREAM_SET_PRIVATE_ID_STATE:
         case STREAM_SET_PRIVATE_ID_CA:
         case STREAM_GET_PRIVATE_ID_STATE:
             return access_vaControl(access, cmd, args);
 
+        case STREAM_SET_TITLE:
+        case STREAM_SET_SEEKPOINT:
+        {
+            int ret = access_vaControl(access, cmd, args);
+            if (ret != VLC_SUCCESS)
+                return ret;
+
+            if (sys->block != NULL)
+            {
+                block_Release(sys->block);
+                sys->block = NULL;
+            }
+            break;
+        }
+
         case STREAM_GET_PRIVATE_BLOCK:
         {
             block_t **b = va_arg(args, block_t **);



More information about the vlc-commits mailing list