zval *new_object;
ALLOC_ZVAL(new_object);
- Z_OBJVAL_P(new_object) = date_object_clone_date(object);
+// Z_OBJVAL_P(new_object) = date_object_clone_date(object);
Z_SET_REFCOUNT_P(new_object, 1);
Z_SET_ISREF_P(new_object);
Z_TYPE_P(new_object) = IS_OBJECT;
/* }}} */
-/* {{{ connect_attr_item_dtor */
+/* {{{ connect_attr_item_edtor */
static void
-connect_attr_item_dtor(void * pDest)
+connect_attr_item_edtor(void * pDest)
{
#ifdef ZTS
TSRMLS_FETCH();
#endif
- DBG_ENTER("connect_attr_item_dtor");
+ DBG_ENTER("connect_attr_item_edtor");
+ mnd_efree(*(char **) pDest);
+ DBG_VOID_RETURN;
+}
+/* }}} */
+
+
+/* {{{ connect_attr_item_pdtor */
+static void
+connect_attr_item_pdtor(void * pDest)
+{
+#ifdef ZTS
+ TSRMLS_FETCH();
+#endif
+ DBG_ENTER("connect_attr_item_pdtor");
mnd_pefree(*(char **) pDest, 1);
DBG_VOID_RETURN;
}
if (!conn->options->connect_attr) {
goto oom;
}
- zend_hash_init(conn->options->connect_attr, 0, NULL, connect_attr_item_dtor, conn->persistent);
+ zend_hash_init(conn->options->connect_attr, 0, NULL, conn->persistent? connect_attr_item_pdtor:connect_attr_item_edtor, conn->persistent);
}
DBG_INF_FMT("Adding [%s][%s]", key, value);
{
- const char * copyv = mnd_pestrdup(value, 1);
+ const char * copyv = mnd_pestrdup(value, conn->persistent);
if (!copyv) {
goto oom;
}