summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
Diffstat (limited to 'ext')
-rw-r--r--ext/sysvshm/sysvshm.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/ext/sysvshm/sysvshm.c b/ext/sysvshm/sysvshm.c
index a445bf27bf..90730fb31f 100644
--- a/ext/sysvshm/sysvshm.c
+++ b/ext/sysvshm/sysvshm.c
@@ -216,7 +216,7 @@ PHP_FUNCTION(shm_remove)
id = Z_LVAL_PP(arg_id);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (!shm_list_ptr) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "The parameter is not a valid shm_identifier");
RETURN_FALSE;
}
@@ -252,7 +252,7 @@ PHP_FUNCTION(shm_put_var)
key = Z_LVAL_PP(arg_key);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (type != php_sysvshm.le_shm) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a SysV shared memory index", id);
RETURN_FALSE;
}
@@ -299,7 +299,7 @@ PHP_FUNCTION(shm_get_var)
key = Z_LVAL_PP(arg_key);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (type != php_sysvshm.le_shm) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a SysV shared memory index", id);
RETURN_FALSE;
}
@@ -345,7 +345,7 @@ PHP_FUNCTION(shm_remove_var)
key = Z_LVAL_PP(arg_key);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (type != php_sysvshm.le_shm) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a SysV shared memory index", id);
RETURN_FALSE;
}