diff --git a/package.xml b/package.xml
index d303f50..3e1fa30 100644
--- a/package.xml
+++ b/package.xml
@@ -10,11 +10,11 @@
bobwei9@hotmail.com
yes
- 2017-03-06
-
+ 2017-05-07
+
- 0.1.2
- 0.1.2
+ 0.2.0
+ 0.2.0
beta
@@ -22,9 +22,8 @@
PHP License
-- Fix uv_listen()
-- Fix a few memory leaks
-- Fix loop cleanup
+- Move from resource handles to object handles
+- Various smaller fixes
diff --git a/php_uv.c b/php_uv.c
index a824a42..ac6ce98 100644
--- a/php_uv.c
+++ b/php_uv.c
@@ -2039,16 +2039,17 @@ static void php_uv_close_cb(uv_handle_t *handle)
php_uv_t *uv = (php_uv_t *) handle->data;
TSRMLS_FETCH_FROM_CTX(uv->thread_ctx);
- if (!(GC_FLAGS(&uv->std) & IS_OBJ_DESTRUCTOR_CALLED)) {
+ if (!PHP_UV_IS_DTORED(uv)) {
ZVAL_OBJ(¶ms[0], (zend_object *) uv);
php_uv_do_callback2(&retval, uv, params, 1, PHP_UV_CLOSE_CB TSRMLS_CC);
zval_ptr_dtor(&retval);
+
+ /* manually clean the uv handle to avoid default dtor handling */
+ clean_uv_handle(uv);
}
PHP_UV_DEBUG_OBJ_DEL_REFCOUNT(uv_close_cb, uv);
- /* manually clean the uv handle to avoid default dtor handling */
- clean_uv_handle(uv);
OBJ_RELEASE(&uv->std);
}
diff --git a/php_uv.h b/php_uv.h
index db47466..03607e0 100755
--- a/php_uv.h
+++ b/php_uv.h
@@ -3,7 +3,7 @@
#define PHP_UV_H
#define PHP_UV_EXTNAME "uv"
-#define PHP_UV_VERSION "0.1.2"
+#define PHP_UV_VERSION "0.2.0"
#ifdef HAVE_CONFIG_H
#include "config.h"