]> git.saurik.com Git - redis.git/blobdiff - dict.h
Deny EXEC under out of memory
[redis.git] / dict.h
diff --git a/dict.h b/dict.h
index 2e58fd845ab8e0558e9547c8c11a715c9e2d58bd..6f9eaa57ba9da5c76cadce37ce571eeccebc1bdc 100644 (file)
--- a/dict.h
+++ b/dict.h
@@ -5,7 +5,7 @@
  * tables of power of two in size are used, collisions are handled by
  * chaining. See the source code for more information... :)
  *
- * Copyright (c) 2006-2009, Salvatore Sanfilippo <antirez at gmail dot com>
+ * Copyright (c) 2006-2010, Salvatore Sanfilippo <antirez at gmail dot com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -60,9 +60,9 @@ typedef struct dictType {
 typedef struct dict {
     dictEntry **table;
     dictType *type;
-    unsigned int size;
-    unsigned int sizemask;
-    unsigned int used;
+    unsigned long size;
+    unsigned long sizemask;
+    unsigned long used;
     void *privdata;
 } dict;
 
@@ -73,7 +73,7 @@ typedef struct dictIterator {
 } dictIterator;
 
 /* This is the initial size of every hash table */
-#define DICT_HT_INITIAL_SIZE     16
+#define DICT_HT_INITIAL_SIZE     4
 
 /* ------------------------------- Macros ------------------------------------*/
 #define dictFreeEntryVal(ht, entry) \
@@ -112,7 +112,7 @@ typedef struct dictIterator {
 
 /* API */
 dict *dictCreate(dictType *type, void *privDataPtr);
-int dictExpand(dict *ht, unsigned int size);
+int dictExpand(dict *ht, unsigned long size);
 int dictAdd(dict *ht, void *key, void *val);
 int dictReplace(dict *ht, void *key, void *val);
 int dictDelete(dict *ht, const void *key);