diff options
| author | Xinchen Hui <laruence@gmail.com> | 2015-02-02 13:23:16 +0800 |
|---|---|---|
| committer | Xinchen Hui <laruence@gmail.com> | 2015-02-02 13:23:16 +0800 |
| commit | 942809909e1bc125db038796c0a1a0b53eeaca7d (patch) | |
| tree | bddec8b44878488fc73e8fe2fb9e30b7ee4f9b67 /ext/sysvmsg | |
| parent | c9e44dc2dfa7ad91fe9253378a49e9f5b057992e (diff) | |
| download | php-git-942809909e1bc125db038796c0a1a0b53eeaca7d.tar.gz | |
Cleanup resource handling APIs
Diffstat (limited to 'ext/sysvmsg')
| -rw-r--r-- | ext/sysvmsg/sysvmsg.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/ext/sysvmsg/sysvmsg.c b/ext/sysvmsg/sysvmsg.c index 61f8c765ed..7f4682c92e 100644 --- a/ext/sysvmsg/sysvmsg.c +++ b/ext/sysvmsg/sysvmsg.c @@ -164,7 +164,9 @@ PHP_FUNCTION(msg_set_queue) return; } - ZEND_FETCH_RESOURCE(mq, sysvmsg_queue_t *, queue, -1, "sysvmsg queue", le_sysvmsg); + if ((mq = (sysvmsg_queue_t *)zend_fetch_resource(Z_RES_P(queue), "sysvmsg queue", le_sysvmsg)) == NULL) { + RETURN_FALSE; + } if (msgctl(mq->id, IPC_STAT, &stat) == 0) { zval *item; @@ -207,7 +209,9 @@ PHP_FUNCTION(msg_stat_queue) return; } - ZEND_FETCH_RESOURCE(mq, sysvmsg_queue_t *, queue, -1, "sysvmsg queue", le_sysvmsg); + if ((mq = (sysvmsg_queue_t *)zend_fetch_resource(Z_RES_P(queue), "sysvmsg queue", le_sysvmsg)) == NULL) { + RETURN_FALSE; + } if (msgctl(mq->id, IPC_STAT, &stat) == 0) { array_init(return_value); @@ -284,7 +288,9 @@ PHP_FUNCTION(msg_remove_queue) return; } - ZEND_FETCH_RESOURCE(mq, sysvmsg_queue_t *, queue, -1, "sysvmsg queue", le_sysvmsg); + if ((mq = (sysvmsg_queue_t *)zend_fetch_resource(Z_RES_P(queue), "sysvmsg queue", le_sysvmsg)) == NULL) { + RETURN_FALSE; + } if (msgctl(mq->id, IPC_RMID, NULL) == 0) { RETVAL_TRUE; @@ -336,7 +342,9 @@ PHP_FUNCTION(msg_receive) } } - ZEND_FETCH_RESOURCE(mq, sysvmsg_queue_t *, queue, -1, "sysvmsg queue", le_sysvmsg); + if ((mq = (sysvmsg_queue_t *)zend_fetch_resource(Z_RES_P(queue), "sysvmsg queue", le_sysvmsg)) == NULL) { + RETURN_FALSE; + } messagebuffer = (struct php_msgbuf *) safe_emalloc(maxsize, 1, sizeof(struct php_msgbuf)); @@ -400,7 +408,9 @@ PHP_FUNCTION(msg_send) return; } - ZEND_FETCH_RESOURCE(mq, sysvmsg_queue_t*, queue, -1, "sysvmsg queue", le_sysvmsg); + if ((mq = (sysvmsg_queue_t *)zend_fetch_resource(Z_RES_P(queue), "sysvmsg queue", le_sysvmsg)) == NULL) { + RETURN_FALSE; + } if (do_serialize) { smart_str msg_var = {0}; |
