Remove potential symbol clash with wrapped code (php)

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12147 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2010-06-24 19:33:21 +00:00
commit b946430c8a
3 changed files with 7 additions and 7 deletions

View file

@ -108,7 +108,7 @@
memcpy(p, &$1, sizeof($1)); memcpy(p, &$1, sizeof($1));
zval * resource; zval * resource;
MAKE_STD_ZVAL(resource); MAKE_STD_ZVAL(resource);
ZEND_REGISTER_RESOURCE(resource, p, le_member_ptr); ZEND_REGISTER_RESOURCE(resource, p, swig_member_ptr);
zend_hash_add(&EG(symbol_table), (char*)"$1", sizeof("$1"), (void*)&resource, sizeof(zval *), NULL); zend_hash_add(&EG(symbol_table), (char*)"$1", sizeof("$1"), (void*)&resource, sizeof(zval *), NULL);
} }
@ -228,7 +228,7 @@
zval **z_var; zval **z_var;
zend_hash_find(&EG(symbol_table), (char*)"$1", sizeof("$1"), (void**)&z_var); zend_hash_find(&EG(symbol_table), (char*)"$1", sizeof("$1"), (void**)&z_var);
void * p = (void*)zend_fetch_resource(*z_var TSRMLS_CC, -1, SWIG_MEMBER_PTR, NULL, 1, le_member_ptr); void * p = (void*)zend_fetch_resource(*z_var TSRMLS_CC, -1, SWIG_MEMBER_PTR, NULL, 1, swig_member_ptr);
memcpy(&$1, p, sizeof($1)); memcpy(&$1, p, sizeof($1));
} }
@ -350,6 +350,6 @@ deliberate error cos this code looks bogus to me
memcpy(p, &$1, sizeof($1)); memcpy(p, &$1, sizeof($1));
zval * resource; zval * resource;
MAKE_STD_ZVAL(resource); MAKE_STD_ZVAL(resource);
ZEND_REGISTER_RESOURCE(resource, p, le_member_ptr); ZEND_REGISTER_RESOURCE(resource, p, swig_member_ptr);
zend_hash_add(&EG(symbol_table), (char*)"$1", sizeof("$1"), (void*)&resource, sizeof(zval *), NULL); zend_hash_add(&EG(symbol_table), (char*)"$1", sizeof("$1"), (void*)&resource, sizeof(zval *), NULL);
} }

View file

@ -357,14 +357,14 @@
memcpy(p, &$1, sizeof($1)); memcpy(p, &$1, sizeof($1));
zval * resource; zval * resource;
MAKE_STD_ZVAL(resource); MAKE_STD_ZVAL(resource);
ZEND_REGISTER_RESOURCE(resource, p, le_member_ptr); ZEND_REGISTER_RESOURCE(resource, p, swig_member_ptr);
SWIG_SetPointerZval(return_value, (void *)&$1, $1_descriptor, $owner); SWIG_SetPointerZval(return_value, (void *)&$1, $1_descriptor, $owner);
} }
%typemap(in, fragment="swig_php_init_member_ptr") SWIGTYPE (CLASS::*) %typemap(in, fragment="swig_php_init_member_ptr") SWIGTYPE (CLASS::*)
{ {
void * p = (void*)zend_fetch_resource($input TSRMLS_CC, -1, SWIG_MEMBER_PTR, NULL, 1, le_member_ptr); void * p = (void*)zend_fetch_resource($input TSRMLS_CC, -1, SWIG_MEMBER_PTR, NULL, 1, swig_member_ptr);
memcpy(&$1, p, sizeof($1)); memcpy(&$1, p, sizeof($1));
} }

View file

@ -17,9 +17,9 @@ static void member_ptr_dtor(zend_rsrc_list_entry *rsrc TSRMLS_DC) {
efree(rsrc->ptr); efree(rsrc->ptr);
} }
static int le_member_ptr; static int swig_member_ptr = 0;
} }
%fragment("swig_php_init_member_ptr", "init", fragment="swig_php_init_member_ptr2") { %fragment("swig_php_init_member_ptr", "init", fragment="swig_php_init_member_ptr2") {
le_member_ptr = zend_register_list_destructors_ex(member_ptr_dtor, NULL, SWIG_MEMBER_PTR, module_number); swig_member_ptr = zend_register_list_destructors_ex(member_ptr_dtor, NULL, SWIG_MEMBER_PTR, module_number);
} }