]> git.sesse.net Git - vlc/blobdiff - modules/access/vcd/vcd.c
Revert the so-called whitelisting commits that are actually blacklisting
[vlc] / modules / access / vcd / vcd.c
index d434d1ad516987d1d7b4ceb5311837cc846b6be1..943272f4e7a08f95ec006ac16f09d24d56fb077c 100644 (file)
 /*****************************************************************************
  * Preamble
  *****************************************************************************/
-#include <stdlib.h>
 
 #include <vlc/vlc.h>
-#include <vlc/input.h>
+#include <vlc_input.h>
+#include <vlc_access.h>
 
 #include "cdrom.h"
 
@@ -39,8 +39,8 @@ static void Close( vlc_object_t * );
 
 #define CACHING_TEXT N_("Caching value in ms")
 #define CACHING_LONGTEXT N_( \
-    "Allows you to modify the default caching value for cdda streams. This " \
-    "value should be set in milliseconds units." )
+    "Caching value for VCDs. This " \
+    "value should be set in milliseconds." )
 
 vlc_module_begin();
     set_shortname( _("VCD"));
@@ -124,6 +124,11 @@ static int Open( vlc_object_t *p_this )
         }
     }
 
+#ifdef WIN32
+    if( psz_dup[0] && psz_dup[1] == ':' &&
+        psz_dup[2] == '\\' && psz_dup[3] == '\0' ) psz_dup[2] = '\0';
+#endif
+
     /* Open VCD */
     if( !(vcddev = ioctl_Open( p_this, psz_dup )) )
     {
@@ -168,8 +173,8 @@ static int Open( vlc_object_t *p_this )
     {
         input_title_t *t = p_sys->title[i] = vlc_input_title_New();
 
-        fprintf( stderr, "title[%d] start=%d\n", i, p_sys->p_sectors[1+i] );
-        fprintf( stderr, "title[%d] end=%d\n", i, p_sys->p_sectors[i+2] );
+        msg_Dbg( p_access, "title[%d] start=%d\n", i, p_sys->p_sectors[1+i] );
+        msg_Dbg( p_access, "title[%d] end=%d\n", i, p_sys->p_sectors[i+2] );
 
         t->i_size = ( p_sys->p_sectors[i+2] - p_sys->p_sectors[i+1] ) *
                     (int64_t)VCD_DATA_SIZE;
@@ -309,6 +314,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         }
 
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
@@ -429,6 +435,9 @@ static int Seek( access_t *p_access, int64_t i_pos )
         p_access->info.i_seekpoint = i_seekpoint;
     }
 
+    /* Reset eof */
+    p_access->info.b_eof = VLC_FALSE;
+
     return VLC_SUCCESS;
 }
 
@@ -491,3 +500,4 @@ static int EntryPoints( access_t *p_access )
 
     return VLC_SUCCESS;
 }
+