murphy-db: get_table_handle should return MQI_INVALID_HANDLE for non-existing tables.
authorKrisztian Litkey <krisztian.litkey@intel.com>
Mon, 24 Sep 2012 07:39:32 +0000 (10:39 +0300)
committerKrisztian Litkey <krisztian.litkey@intel.com>
Fri, 26 Oct 2012 16:03:50 +0000 (19:03 +0300)
src/murphy-db/mqi/mqi.c

index fbd1161..d2e78f2 100644 (file)
@@ -679,10 +679,17 @@ int mqi_delete_from(mqi_handle_t h, mqi_cond_entry_t *cond)
 
 mqi_handle_t mqi_get_table_handle(char *table_name)
 {
+    void *data;
+
     MDB_CHECKARG(table_name, MQI_HANDLE_INVALID);
     MDB_PREREQUISITE(dbs && ndb > 0, MQI_HANDLE_INVALID);
 
-    return mdb_hash_get_data(table_name_hash, 0,table_name) - NULL;
+    data = mdb_hash_get_data(table_name_hash, 0,table_name);
+
+    if (data != NULL)
+        return data - NULL;
+    else
+        return MQI_HANDLE_INVALID;
 }