Code

src/plugin.c: Check `list_data_set' to be non-NULL before querying it.
authorMarius Rieder <marius.rieder@durchmesser.ch>
Sun, 6 May 2007 14:41:45 +0000 (16:41 +0200)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Sun, 6 May 2007 14:41:45 +0000 (16:41 +0200)
src/plugin.c

index ee1240cb575858ea9786bdcd39f76bdc921f2861..7dd7bd96270618c45a34aec331da7e81b9fbabe9 100644 (file)
@@ -420,7 +420,8 @@ int plugin_register_data_set (const data_set_t *ds)
        data_set_t *ds_copy;
        int i;
 
-       if (llist_search (list_data_set, ds->type) != NULL)
+       if ((list_data_set != NULL)
+                       && (llist_search (list_data_set, ds->type) != NULL))
        {
                NOTICE ("Replacing DS `%s' with another version.", ds->type);
                plugin_unregister_data_set (ds->type);
@@ -493,6 +494,9 @@ int plugin_unregister_data_set (const char *name)
        llentry_t  *e;
        data_set_t *ds;
 
+       if (list_data_set == NULL)
+               return (-1);
+
        e = llist_search (list_data_set, name);
 
        if (e == NULL)
@@ -615,7 +619,7 @@ int plugin_dispatch_values (const char *name, const value_list_t *vl)
        data_set_t *ds;
        llentry_t *le;
 
-       if (list_write == NULL)
+       if ((list_write == NULL) || (list_data_set == NULL))
                return (-1);
 
        le = llist_search (list_data_set, name);