]> git.sesse.net Git - vlc/blobdiff - src/input/demux.c
input_DecoderCreate: missing const
[vlc] / src / input / demux.c
index e887b3febc38be2b32e52165d7f840bfc25941af..dcc6b16cdeccdb7370b240419bbf0dbee3c8ec2f 100644 (file)
@@ -308,6 +308,9 @@ int demux_vaControlHelper( stream_t *s,
         case DEMUX_GET_META:
             return stream_vaControl( s, STREAM_GET_META, args );
 
+        case DEMUX_IS_PLAYLIST:
+            return stream_vaControl(s, STREAM_IS_DIRECTORY, args );
+
         case DEMUX_GET_PTS_DELAY:
         case DEMUX_GET_FPS:
         case DEMUX_HAS_UNSUPPORTED_META:
@@ -398,7 +401,8 @@ static bool SkipID3Tag( demux_t *p_demux )
     i_size += 10;
 
     /* Skip the entire tag */
-    stream_Read( p_demux->s, NULL, i_size );
+    if( stream_Read( p_demux->s, NULL, i_size ) < i_size )
+        return false;
 
     msg_Dbg( p_demux, "ID3v2.%d revision %d tag found, skipping %d bytes",
              version, revision, i_size );
@@ -429,7 +433,8 @@ static bool SkipAPETag( demux_t *p_demux )
     i_size = GetDWLE( &p_peek[8+4] ) + ( (flags&(1<<30)) ? 32 : 0 );
 
     /* Skip the entire tag */
-    stream_Read( p_demux->s, NULL, i_size );
+    if( stream_Read( p_demux->s, NULL, i_size ) < i_size )
+        return false;
 
     msg_Dbg( p_demux, "AP2 v%d tag found, skipping %d bytes",
              i_version/1000, i_size );