cvs: php4 /ext/session mod_mm.c
| From: | Sascha Schumann | Date: | Fri, 03 Nov 2000 12:00:49 +0000 |
| Subject: | cvs: php4 /ext/session mod_mm.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-2459@lists.php.net to get a copy of this message | ||
sas Fri Nov 3 04:00:49 2000 EDT
Modified files:
/php4/ext/session mod_mm.c
Log:
Add some additional checks
Submitted by: mookid@sigent.ru (Mikhail Zabaluev)
Index: php4/ext/session/mod_mm.c
diff -u php4/ext/session/mod_mm.c:1.11 php4/ext/session/mod_mm.c:1.12
--- php4/ext/session/mod_mm.c:1.11 Fri Nov 3 03:59:41 2000
+++ php4/ext/session/mod_mm.c Fri Nov 3 04:00:49 2000
@@ -176,8 +176,15 @@
static int ps_mm_initialize(ps_mm *data, const char *path)
{
data->mm = mm_create(0, path);
+ if (!data->mm) {
+ return FAILURE;
+ }
data->hash = mm_calloc(data->mm, HASH_SIZE, sizeof(*data->hash));
+ if (!data->hash) {
+ mm_destroy(data->mm);
+ return FAILURE;
+ }
return SUCCESS;
}
@@ -200,15 +207,21 @@
PHP_GINIT_FUNCTION(ps_mm)
{
ps_mm_instance = calloc(sizeof(*ps_mm_instance), 1);
- ps_mm_initialize(ps_mm_instance, PS_MM_PATH);
+ if (ps_mm_initialize(ps_mm_instance, PS_MM_PATH) != SUCCESS) {
+ ps_mm_instance = NULL;
+ return FAILURE;
+ }
return SUCCESS;
}
PHP_GSHUTDOWN_FUNCTION(ps_mm)
{
- ps_mm_destroy(ps_mm_instance);
- free(ps_mm_instance);
- return SUCCESS;
+ if (ps_mm_instance) {
+ ps_mm_destroy(ps_mm_instance);
+ free(ps_mm_instance);
+ return SUCCESS;
+ }
+ return FAILURE;
}
PS_OPEN_FUNC(mm)