cvs: ZendEngine2 / zend_API.c zend_execute.h zend_execute_API.c
helly Fri Mar 3 23:20:29 2006 UTC
Modified files:
/ZendEngine2 zend_API.c zend_execute.h zend_execute_API.c
Log:
- Make unicode handling portable (noted by andrei)
# Actually we should provide much more such unicode strings that we often
# use like 'parent', 'self' and so on.
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_API.c?r1=1.351&r2=1.352&diff_format=u
Index: ZendEngine2/zend_API.c
diff -u ZendEngine2/zend_API.c:1.351 ZendEngine2/zend_API.c:1.352
--- ZendEngine2/zend_API.c:1.351 Fri Mar 3 22:37:47 2006
+++ ZendEngine2/zend_API.c Fri Mar 3 23:20:29 2006
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_API.c,v 1.351 2006/03/03 22:37:47 helly Exp $ */
+/* $Id: zend_API.c,v 1.352 2006/03/03 23:20:29 helly Exp $ */
#include "zend.h"
#include "zend_execute.h"
@@ -2524,7 +2524,7 @@
*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;
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_execute.h?r1=1.96&r2=1.97&diff_format=u
Index: ZendEngine2/zend_execute.h
diff -u ZendEngine2/zend_execute.h:1.96 ZendEngine2/zend_execute.h:1.97
--- ZendEngine2/zend_execute.h:1.96 Sun Feb 26 11:57:14 2006
+++ ZendEngine2/zend_execute.h Fri Mar 3 23:20:29 2006
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_execute.h,v 1.96 2006/02/26 11:57:14 dmitry Exp $ */
+/* $Id: zend_execute.h,v 1.97 2006/03/03 23:20:29 helly Exp $ */
#ifndef ZEND_EXECUTE_H
#define ZEND_EXECUTE_H
@@ -46,6 +46,11 @@
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);
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_execute_API.c?r1=1.365&r2=1.366&diff_format=u
Index: ZendEngine2/zend_execute_API.c
diff -u ZendEngine2/zend_execute_API.c:1.365 ZendEngine2/zend_execute_API.c:1.366
--- ZendEngine2/zend_execute_API.c:1.365 Fri Mar 3 12:06:44 2006
+++ ZendEngine2/zend_execute_API.c Fri Mar 3 23:20:29 2006
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_execute_API.c,v 1.365 2006/03/03 12:06:44 dmitry Exp $ */
+/* $Id: zend_execute_API.c,v 1.366 2006/03/03 23:20:29 helly Exp $ */
#include <stdio.h>
#include <signal.h>
@@ -51,14 +51,16 @@
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
Thread (1 message)
- Marcus Boerger