cvs: php4 /ext/session session.c
| From: | Sascha Schumann | Date: | Wed, 25 Jul 2001 19:02:13 +0000 |
| Subject: | cvs: php4 /ext/session session.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-6346@lists.php.net to get a copy of this message | ||
sas Wed Jul 25 15:02:13 2001 EDT
Modified files:
/php4/ext/session session.c
Log:
Get rid of memchr
Index: php4/ext/session/session.c
diff -u php4/ext/session/session.c:1.220 php4/ext/session/session.c:1.221
--- php4/ext/session/session.c:1.220 Fri Jul 20 10:40:30 2001
+++ php4/ext/session/session.c Wed Jul 25 15:02:13 2001
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: session.c,v 1.220 2001/07/20 14:40:30 zeev Exp $ */
+/* $Id: session.c,v 1.221 2001/07/25 19:02:13 sas Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -407,7 +407,13 @@
PHP_VAR_UNSERIALIZE_INIT(var_hash);
- for (p = q = val; (p < endptr) && (q = memchr(p, PS_DELIMITER, endptr - p)); p = q) {
+ p = val;
+
+ while (p < endptr) {
+ q = p;
+ while (*q != PS_DELIMITER)
+ if (++q >= endptr) goto break_outer_loop;
+
if (p[0] == PS_UNDEF_MARKER) {
p++;
has_value = 0;
@@ -428,8 +434,11 @@
}
PS_ADD_VARL(name, namelen);
efree(name);
+
+ p = q;
}
-
+break_outer_loop:
+
PHP_VAR_UNSERIALIZE_DESTROY(var_hash);
return SUCCESS;
@@ -911,7 +920,7 @@
int nrdels = -1;
nrand = (int) (100.0*php_combined_lcg());
- if (nrand <= PS(gc_probability)) {
+ if (nrand < PS(gc_probability)) {
PS(mod)->gc(&PS(mod_data), PS(gc_maxlifetime), &nrdels);
#if 0
if (nrdels != -1)