diff options
author | Dmitry Stogov <dmitry@php.net> | 2007-07-14 08:51:17 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2007-07-14 08:51:17 +0000 |
commit | 5e21f121ec07171e40a880dd73dc82eb7cb449ba (patch) | |
tree | 2db8252009401286678e95baeb5710379368ba12 | |
parent | b608bd654dd9df5059dc031e7f1b01d1f14e65a5 (diff) | |
download | php-git-5e21f121ec07171e40a880dd73dc82eb7cb449ba.tar.gz |
Fixed compilation on Windows
-rw-r--r-- | Zend/zend_API.c | 10 | ||||
-rw-r--r-- | Zend/zend_vm_def.h | 20 | ||||
-rw-r--r-- | Zend/zend_vm_execute.h | 80 |
3 files changed, 88 insertions, 22 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 22a452ffdd..5c4c923b08 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -2598,11 +2598,17 @@ static int zend_is_callable_check_func(int check_flags, zval ***zobj_ptr_ptr, ze if (Z_TYPE_P(callable) == IS_UNICODE && Z_USTRVAL_P(callable)[0] == ':' && Z_USTRVAL_P(callable)[1] == ':') { - lmname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(callable)+2), Z_USTRLEN_P(callable)-2, 1, &mlen); + zstr tmp; + + tmp.u = Z_USTRVAL_P(callable) + 2; + lmname = zend_u_str_case_fold(IS_UNICODE, tmp, Z_USTRLEN_P(callable)-2, 1, &mlen); } else if (Z_TYPE_P(callable) == IS_STRING && Z_STRVAL_P(callable)[0] == ':' && Z_STRVAL_P(callable)[1] == ':') { - lmname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(callable)+2), Z_STRLEN_P(callable)-2, 1, &mlen); + zstr tmp; + + tmp.s = Z_STRVAL_P(callable) + 2; + lmname = zend_u_str_case_fold(IS_STRING, tmp, Z_STRLEN_P(callable)-2, 1, &mlen); } else { lmname = zend_u_str_case_fold(Z_TYPE_P(callable), Z_UNIVAL_P(callable), Z_UNILEN_P(callable), 1, &mlen); } diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 4de0975de4..1d1789038f 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -1915,9 +1915,15 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST|TMP|VAR|CV) Z_STRVAL_P(function_name)[0] == ':' && Z_STRVAL_P(function_name)[1] == ':'))) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-2, 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-2, 1, &lcname_len); } } else { lcname = zend_u_str_case_fold(Z_TYPE_P(function_name), Z_UNIVAL_P(function_name), function_name_strlen, 1, &lcname_len); @@ -1927,9 +1933,15 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST|TMP|VAR|CV) if (OP2_TYPE == IS_CONST && opline->op1.op_type == IS_CONST) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } if (zend_u_hash_find(EG(function_table), Z_TYPE_P(function_name), lcname, lcname_len+1, (void **) &function)==FAILURE || function->type != ZEND_INTERNAL_FUNCTION) { diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index 1b7d0c5515..7ae8b891d2 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -698,9 +698,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) Z_STRVAL_P(function_name)[0] == ':' && Z_STRVAL_P(function_name)[1] == ':'))) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-2, 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-2, 1, &lcname_len); } } else { lcname = zend_u_str_case_fold(Z_TYPE_P(function_name), Z_UNIVAL_P(function_name), function_name_strlen, 1, &lcname_len); @@ -710,9 +716,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) if (IS_CONST == IS_CONST && opline->op1.op_type == IS_CONST) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } if (zend_u_hash_find(EG(function_table), Z_TYPE_P(function_name), lcname, lcname_len+1, (void **) &function)==FAILURE || function->type != ZEND_INTERNAL_FUNCTION) { @@ -884,9 +896,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) Z_STRVAL_P(function_name)[0] == ':' && Z_STRVAL_P(function_name)[1] == ':'))) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-2, 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-2, 1, &lcname_len); } } else { lcname = zend_u_str_case_fold(Z_TYPE_P(function_name), Z_UNIVAL_P(function_name), function_name_strlen, 1, &lcname_len); @@ -896,9 +914,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) if (IS_TMP_VAR == IS_CONST && opline->op1.op_type == IS_CONST) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } if (zend_u_hash_find(EG(function_table), Z_TYPE_P(function_name), lcname, lcname_len+1, (void **) &function)==FAILURE || function->type != ZEND_INTERNAL_FUNCTION) { @@ -985,9 +1009,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) Z_STRVAL_P(function_name)[0] == ':' && Z_STRVAL_P(function_name)[1] == ':'))) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-2, 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-2, 1, &lcname_len); } } else { lcname = zend_u_str_case_fold(Z_TYPE_P(function_name), Z_UNIVAL_P(function_name), function_name_strlen, 1, &lcname_len); @@ -997,9 +1027,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) if (IS_VAR == IS_CONST && opline->op1.op_type == IS_CONST) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } if (zend_u_hash_find(EG(function_table), Z_TYPE_P(function_name), lcname, lcname_len+1, (void **) &function)==FAILURE || function->type != ZEND_INTERNAL_FUNCTION) { @@ -1115,9 +1151,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) Z_STRVAL_P(function_name)[0] == ':' && Z_STRVAL_P(function_name)[1] == ':'))) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-2, 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+2), function_name_strlen-2, 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + 2; + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-2, 1, &lcname_len); } } else { lcname = zend_u_str_case_fold(Z_TYPE_P(function_name), Z_UNIVAL_P(function_name), function_name_strlen, 1, &lcname_len); @@ -1127,9 +1169,15 @@ static int ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) if (IS_CV == IS_CONST && opline->op1.op_type == IS_CONST) { if (Z_TYPE_P(function_name) == IS_UNICODE) { - lcname = zend_u_str_case_fold(IS_UNICODE, (zstr)(Z_USTRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.u = Z_USTRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_UNICODE, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } else { - lcname = zend_u_str_case_fold(IS_STRING, (zstr)(Z_STRVAL_P(function_name)+Z_LVAL(opline->op1.u.constant)), function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); + zstr tmp; + + tmp.s = Z_STRVAL_P(function_name) + Z_LVAL(opline->op1.u.constant); + lcname = zend_u_str_case_fold(IS_STRING, tmp, function_name_strlen-Z_LVAL(opline->op1.u.constant), 1, &lcname_len); } if (zend_u_hash_find(EG(function_table), Z_TYPE_P(function_name), lcname, lcname_len+1, (void **) &function)==FAILURE || function->type != ZEND_INTERNAL_FUNCTION) { |