tony2001 Sat Jan 20 23:17:10 2007 UTC
Modified files: (Branch: PHP_4_4)
/Zend zend_hash.c
Log:
MFH
http://cvs.php.net/viewvc.cgi/Zend/zend_hash.c?r1=1.87.4.8.2.3&r2=1.87.4.8.2.4&diff_format=u
Index: Zend/zend_hash.c
diff -u Zend/zend_hash.c:1.87.4.8.2.3 Zend/zend_hash.c:1.87.4.8.2.4
--- Zend/zend_hash.c:1.87.4.8.2.3 Wed Feb 1 09:11:55 2006
+++ Zend/zend_hash.c Sat Jan 20 23:17:10 2007
@@ -178,11 +178,16 @@
SET_INCONSISTENT(HT_OK);
- while ((1U << i) < nSize) {
- i++;
+ if (nSize >= 0x80000000) {
+ /* prevent overflow */
+ ht->nTableSize = 0x80000000;
+ } else {
+ while ((1U << i) < nSize) {
+ i++;
+ }
+ ht->nTableSize = 1 << i;
}
- ht->nTableSize = 1 << i;
ht->nTableMask = ht->nTableSize - 1;
ht->pDestructor = pDestructor;
ht->pListHead = NULL;
--
Zend Engine CVS Mailing List (http://cvs.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
|