*fptr_ptr = NULL;
if (Z_TYPE_P(callable) == IS_UNICODE) {
- if ((colon.u = u_strstr(Z_USTRVAL_P(callable), (UChar*)":\0:\0\0")) != NULL) {
+ if ((colon.u = u_strstr(Z_USTRVAL_P(callable), u_doublecolon)) != NULL) {
mlen = u_strlen(colon.u+2);
clen = Z_USTRLEN_P(callable) - mlen - 2;
mname.u = colon.u + 2;
BEGIN_EXTERN_C()
+ZEND_API extern UChar u_main[sizeof("main")];
+ZEND_API extern UChar u_return[sizeof("return ")];
+ZEND_API extern UChar u_semicolon[sizeof(" ;")];
+ZEND_API extern UChar u_doublecolon[sizeof(" ;")];
+
ZEND_API extern void (*zend_execute)(zend_op_array *op_array TSRMLS_DC);
ZEND_API extern void (*zend_execute_internal)(zend_execute_data *execute_data_ptr, int return_value_used TSRMLS_DC);
static int timeout_thread_initialized=0;
#endif
-static UChar u_main[sizeof("main")];
-static UChar u_return[sizeof("return ")];
-static UChar u_semicolon[sizeof(" ;")];
+UChar u_main[sizeof("main")];
+UChar u_return[sizeof("return ")];
+UChar u_semicolon[sizeof(" ;")];
+UChar u_doublecolon[sizeof(" ;")];
void init_unicode_strings() {
u_charsToUChars("main", u_main, sizeof("main"));
u_charsToUChars("return ", u_return, sizeof("return "));
u_charsToUChars(" ;", u_semicolon, sizeof(" ;"));
+ u_charsToUChars("::", u_doublecolon, sizeof("::"));
}
#if ZEND_DEBUG