This commit is contained in:
Moriyoshi Koizumi 2008-07-28 06:05:14 +00:00
parent fa8f78d96c
commit 1782511e72

View File

@ -448,22 +448,22 @@ ZEND_API size_t zend_get_scanned_file_offset(TSRMLS_D)
{
size_t offset = SCNG(yy_cursor) - SCNG(yy_start);
#ifdef ZEND_MULTIBYTE
size_t original_offset = offset, length = 0;
do {
unsigned char *p = NULL;
SCNG(input_filter)(&p, &length, SCNG(script_org), offset TSRMLS_CC);
if (!p) {
break;
}
efree(p);
if (length > original_offset) {
offset--;
} else if (length < original_offset) {
offset++;
}
} while (original_offset != length);
size_t original_offset = offset, length = 0;
do {
unsigned char *p = NULL;
SCNG(input_filter)(&p, &length, SCNG(script_org), offset TSRMLS_CC);
if (!p) {
break;
}
efree(p);
if (length > original_offset) {
offset--;
} else if (length < original_offset) {
offset++;
}
} while (original_offset != length);
#endif
return offset;
return offset;
}
@ -605,10 +605,10 @@ ZEND_API void zend_multibyte_yyinput_again(zend_encoding_filter old_input_filter
offset = original_offset = YYCURSOR - SCNG(yy_start);
if (old_input_filter && offset > 0) {
zend_encoding *new_encoding = SCNG(script_encoding);
zend_encoding_filter new_filter = SCNG(input_filter);
zend_encoding_filter new_filter = SCNG(input_filter);
SCNG(script_encoding) = old_encoding;
SCNG(input_filter) = new_filter;
offset = zend_get_scanned_file_offset(TSRMLS_C);
SCNG(input_filter) = new_filter;
offset = zend_get_scanned_file_offset(TSRMLS_C);
SCNG(script_encoding) = new_encoding;
SCNG(input_filter) = new_filter;
}