]> git.sesse.net Git - vlc/blobdiff - modules/access/imem.c
imem: don't pass data pointer through MRL either
[vlc] / modules / access / imem.c
index e1a750d7e381cbdd97293ad744b8187e1e431c6b..4ba41b39a44ff4739828bf371c64be9ed1d50a55 100644 (file)
@@ -114,24 +114,39 @@ vlc_module_begin()
     set_subcategory(SUBCAT_INPUT_ACCESS)
 
     add_integer("imem-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT, CACHING_LONGTEXT, true)
+        change_private()
     add_string ("imem-get", "0", NULL, GET_TEXT, GET_LONGTEXT, true)
+        change_volatile()
     add_string ("imem-release", "0", NULL, RELEASE_TEXT, RELEASE_LONGTEXT, true)
+        change_volatile()
     add_string ("imem-data", "0", NULL, DATA_TEXT, DATA_LONGTEXT, true)
+        change_volatile()
 
     add_integer("imem-id", -1, NULL, ID_TEXT, ID_LONGTEXT, true)
+        change_private()
     add_integer("imem-group", 0, NULL, GROUP_TEXT, GROUP_LONGTEXT, true)
+        change_private()
     add_integer("imem-cat", 0, NULL, CAT_TEXT, CAT_LONGTEXT, true)
         change_integer_list(cat_values, cat_texts, NULL)
-    add_string ("imem-codec", NULL, NULL, CODEC_TEXT, CODEC_LONGTEXT, true)
-    add_string( "imem-language", NULL, NULL, LANGUAGE_TEXT, LANGUAGE_LONGTEXT, false);
+        change_private()
+    add_string ("imeme-codec", NULL, NULL, CODEC_TEXT, CODEC_LONGTEXT, true)
+        change_private()
+    add_string( "imem-language", NULL, NULL, LANGUAGE_TEXT, LANGUAGE_LONGTEXT, false)
+        change_private()
 
     add_integer("imem-samplerate", 0, NULL, SAMPLERATE_TEXT, SAMPLERATE_LONGTEXT, true)
+        change_private()
     add_integer("imem-channels", 0, NULL, CHANNELS_TEXT, CHANNELS_LONGTEXT, true)
+        change_private()
 
     add_integer("imem-width", 0, NULL, WIDTH_TEXT, WIDTH_LONGTEXT, true)
+        change_private()
     add_integer("imem-height", 0, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT, true)
+        change_private()
     add_string ("imem-dar", NULL, NULL, DAR_TEXT, DAR_LONGTEXT, true)
+        change_private()
     add_string ("imem-fps", NULL, NULL, FPS_TEXT, FPS_LONGTEXT, true)
+        change_private()
 
     add_shortcut("imem")
     set_capability("access_demux", 0)
@@ -212,16 +227,16 @@ static int Open(vlc_object_t *object)
         return VLC_EGENERIC;
     }
 
-    /* Now we can parse the MRL (get/release must not be parsed to avoid
-     * security risks) */
-    if (*demux->psz_path)
-        ParseMRL(demux);
-
     tmp = var_CreateGetString(demux, "imem-data");
     if (tmp)
         sys->source.data = (void*)(intptr_t)strtoll(tmp, NULL, 0);
     free(tmp);
 
+    /* Now we can parse the MRL (get/release must not be parsed to avoid
+     * security risks) */
+    if (*demux->psz_path)
+        ParseMRL(demux);
+
     msg_Dbg(demux, "Using get(%p) release(%p) and data(%p)",
             sys->source.get, sys->source.release, sys->source.data);
 
@@ -254,7 +269,6 @@ static int Open(vlc_object_t *object)
         fmt.video.i_height = var_CreateGetInteger(demux, "imem-height");
         unsigned num, den;
         if (!var_CreateGetRational(demux, &num, &den, "imem-dar") && num > 0 && den > 0) {
-            fmt.video.i_aspect = VOUT_ASPECT_FACTOR * num / den;
             if (fmt.video.i_width > 0 && fmt.video.i_height > 0) {
                 fmt.video.i_sar_num = num * fmt.video.i_height;
                 fmt.video.i_sar_den = den * fmt.video.i_width;