]> git.sesse.net Git - vlc/blobdiff - src/modules/entry.c
Some more vlc_config_* code
[vlc] / src / modules / entry.c
index 01dae75647693c6f524f6739424b70a54babbc7c..a221483d29a22e4381bc11f7de9b2b99c76195b7 100644 (file)
@@ -142,6 +142,25 @@ int vlc_module_set (module_t *module, int propid, void *value)
     return 0;
 }
 
+module_config_t *vlc_config_create (module_t *module, int type)
+{
+    unsigned confsize = module->confsize;
+    module_config_t *tab = module->p_config;
+
+    if ((confsize & 0xf) == 0)
+    {
+        tab = realloc (tab, (confsize + 17) * sizeof (*tab));
+        if (tab == NULL)
+            return NULL;
+
+        module->p_config = tab;
+    }
+    module->confsize++;
+
+    memset (tab + confsize, 0, sizeof (tab[confsize]));
+    return tab + confsize;
+}
+
 int vlc_config_set (module_config_t *restrict item, vlc_config_t id, ...)
 {
     int ret = -1;