Skip to content

Commit 4e537ca

Browse files
committed
fix broken merge from master
1 parent 9418873 commit 4e537ca

File tree

2 files changed

+37
-45
lines changed

2 files changed

+37
-45
lines changed

Zend/zend_compile.c

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -146,10 +146,10 @@ static void build_runtime_defined_function_key(zval *result, const char *name, z
146146
}
147147

148148
/* NULL, name length, filename length, last accepting char position length */
149-
Z_STRLEN_P(result) = 1+name_length+strlen(filename)+char_pos_len;
149+
Z_STRSIZE_P(result) = 1+name_length+strlen(filename)+char_pos_len;
150150

151151
/* must be binary safe */
152-
Z_STRVAL_P(result) = (char *) safe_emalloc(Z_STRLEN_P(result), 1, 1);
152+
Z_STRVAL_P(result) = (char *) safe_emalloc(Z_STRSIZE_P(result), 1, 1);
153153
Z_STRVAL_P(result)[0] = '\0';
154154
sprintf(Z_STRVAL_P(result)+1, "%s%s%s", name, filename, char_pos_buf);
155155

@@ -656,14 +656,14 @@ void fetch_simple_variable_ex(znode *result, znode *varname, int bp, zend_uchar
656656
convert_to_string(&varname->u.constant);
657657
}
658658

659-
hash = str_hash(Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant));
660-
if (!zend_is_auto_global_quick(Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant), hash TSRMLS_CC) &&
661-
!(Z_STRLEN(varname->u.constant) == (sizeof("this")-1) &&
659+
hash = str_hash(Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant));
660+
if (!zend_is_auto_global_quick(Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant), hash TSRMLS_CC) &&
661+
!(Z_STRSIZE(varname->u.constant) == (sizeof("this")-1) &&
662662
!memcmp(Z_STRVAL(varname->u.constant), "this", sizeof("this"))) &&
663663
(CG(active_op_array)->last == 0 ||
664664
CG(active_op_array)->opcodes[CG(active_op_array)->last-1].opcode != ZEND_BEGIN_SILENCE)) {
665665
result->op_type = IS_CV;
666-
result->u.op.var = lookup_cv(CG(active_op_array), Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant), hash TSRMLS_CC);
666+
result->u.op.var = lookup_cv(CG(active_op_array), Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant), hash TSRMLS_CC);
667667
Z_STRVAL(varname->u.constant) = (char*)CG(active_op_array)->vars[result->u.op.var].name;
668668
result->EA = 0;
669669
return;
@@ -687,7 +687,7 @@ void fetch_simple_variable_ex(znode *result, znode *varname, int bp, zend_uchar
687687

688688
if (varname->op_type == IS_CONST) {
689689
CALCULATE_LITERAL_HASH(opline_ptr->op1.constant);
690-
if (zend_is_auto_global_quick(Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant), Z_HASH_P(&CONSTANT(opline_ptr->op1.constant)) TSRMLS_CC)) {
690+
if (zend_is_auto_global_quick(Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant), Z_HASH_P(&CONSTANT(opline_ptr->op1.constant)) TSRMLS_CC)) {
691691
opline_ptr->extended_value = ZEND_FETCH_GLOBAL;
692692
}
693693
}
@@ -1520,7 +1520,7 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
15201520
{
15211521
zend_op_array op_array;
15221522
char *name = Z_STRVAL(function_name->u.constant);
1523-
zend_str_size_int name_len = Z_STRLEN(function_name->u.constant);
1523+
zend_str_size_int name_len = Z_STRSIZE(function_name->u.constant);
15241524
zend_str_size_int function_begin_line = function_token->u.op.opline_num;
15251525
zend_uint fn_flags;
15261526
const char *lcname;
@@ -1831,7 +1831,7 @@ void zend_do_receive_param(zend_uchar op, znode *varname, const znode *initializ
18311831
zend_error(E_COMPILE_ERROR, "Cannot re-assign auto-global variable %s", Z_STRVAL(varname->u.constant));
18321832
} else {
18331833
var.op_type = IS_CV;
1834-
var.u.op.var = lookup_cv(CG(active_op_array), Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant), 0 TSRMLS_CC);
1834+
var.u.op.var = lookup_cv(CG(active_op_array), Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant), 0 TSRMLS_CC);
18351835
Z_STRVAL(varname->u.constant) = (char*)CG(active_op_array)->vars[var.u.op.var].name;
18361836
var.EA = 0;
18371837
if (CG(active_op_array)->vars[var.u.op.var].hash_value == THIS_HASHVAL &&
@@ -1874,8 +1874,8 @@ void zend_do_receive_param(zend_uchar op, znode *varname, const znode *initializ
18741874
}
18751875
CG(active_op_array)->arg_info = erealloc(CG(active_op_array)->arg_info, sizeof(zend_arg_info)*(CG(active_op_array)->num_args));
18761876
cur_arg_info = &CG(active_op_array)->arg_info[CG(active_op_array)->num_args-1];
1877-
cur_arg_info->name = zend_new_interned_string(estrndup(Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant)), Z_STRLEN(varname->u.constant) + 1, 1 TSRMLS_CC);
1878-
cur_arg_info->name_len = Z_STRLEN(varname->u.constant);
1877+
cur_arg_info->name = zend_new_interned_string(estrndup(Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant)), Z_STRSIZE(varname->u.constant) + 1, 1 TSRMLS_CC);
1878+
cur_arg_info->name_len = Z_STRSIZE(varname->u.constant);
18791879
cur_arg_info->type_hint = 0;
18801880
cur_arg_info->pass_by_reference = pass_by_reference;
18811881
cur_arg_info->allow_null = 1;
@@ -1910,9 +1910,9 @@ void zend_do_receive_param(zend_uchar op, znode *varname, const znode *initializ
19101910
if (ZEND_FETCH_CLASS_DEFAULT == zend_get_class_fetch_type(Z_STRVAL(class_type->u.constant), Z_STRSIZE(class_type->u.constant))) {
19111911
zend_resolve_class_name(class_type TSRMLS_CC);
19121912
}
1913-
Z_STRVAL(class_type->u.constant) = (char*)zend_new_interned_string(Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant) + 1, 1 TSRMLS_CC);
1913+
Z_STRVAL(class_type->u.constant) = (char*)zend_new_interned_string(Z_STRVAL(class_type->u.constant), Z_STRSIZE(class_type->u.constant) + 1, 1 TSRMLS_CC);
19141914
cur_arg_info->class_name = Z_STRVAL(class_type->u.constant);
1915-
cur_arg_info->class_name_len = Z_STRLEN(class_type->u.constant);
1915+
cur_arg_info->class_name_len = Z_STRSIZE(class_type->u.constant);
19161916
if (op == ZEND_RECV_INIT) {
19171917
if (Z_TYPE(initialization->u.constant) == IS_NULL || (Z_TYPE(initialization->u.constant) == IS_CONSTANT && !strcasecmp(Z_STRVAL(initialization->u.constant), "NULL"))) {
19181918
cur_arg_info->allow_null = 1;
@@ -1944,8 +1944,8 @@ int zend_do_begin_function_call(znode *function_name, zend_bool check_namespace
19441944
return 1;
19451945
}
19461946

1947-
lcname = zend_str_tolower_dup(Z_STRVAL(function_name->u.constant), Z_STRLEN(function_name->u.constant));
1948-
if ((zend_hash_find(CG(function_table), lcname, Z_STRLEN(function_name->u.constant)+1, (void **) &function)==FAILURE) ||
1947+
lcname = zend_str_tolower_dup(Z_STRVAL(function_name->u.constant), Z_STRSIZE(function_name->u.constant));
1948+
if ((zend_hash_find(CG(function_table), lcname, Z_STRSIZE(function_name->u.constant)+1, (void **) &function)==FAILURE) ||
19491949
((CG(compiler_options) & ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS) &&
19501950
(function->type == ZEND_INTERNAL_FUNCTION))) {
19511951
zend_do_begin_dynamic_function_call(function_name, 0 TSRMLS_CC);
@@ -2126,7 +2126,7 @@ void zend_do_resolve_class_name(znode *result, znode *class_name, int is_static
21262126
int lctype;
21272127
znode constant_name;
21282128

2129-
lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), Z_STRLEN(class_name->u.constant));
2129+
lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), Z_STRSIZE(class_name->u.constant));
21302130
lctype = zend_get_class_fetch_type(lcname, strlen(lcname));
21312131
switch (lctype) {
21322132
case ZEND_FETCH_CLASS_SELF:
@@ -2256,7 +2256,7 @@ void zend_do_fetch_class(znode *result, znode *class_name TSRMLS_DC) /* {{{ */
22562256
if (class_name->op_type == IS_CONST) {
22572257
int fetch_type;
22582258

2259-
fetch_type = zend_get_class_fetch_type(Z_STRVAL(class_name->u.constant), Z_STRLEN(class_name->u.constant));
2259+
fetch_type = zend_get_class_fetch_type(Z_STRVAL(class_name->u.constant), Z_STRSIZE(class_name->u.constant));
22602260
switch (fetch_type) {
22612261
case ZEND_FETCH_CLASS_SELF:
22622262
case ZEND_FETCH_CLASS_PARENT:
@@ -2403,19 +2403,19 @@ void zend_do_build_full_name(znode *result, znode *prefix, znode *name, int is_c
24032403
}
24042404

24052405
if (is_class_member) {
2406-
length = sizeof("::")-1 + Z_STRLEN(result->u.constant) + Z_STRLEN(name->u.constant);
2406+
length = sizeof("::")-1 + Z_STRSIZE(result->u.constant) + Z_STRSIZE(name->u.constant);
24072407
Z_STRVAL(result->u.constant) = erealloc(Z_STRVAL(result->u.constant), length+1);
2408-
memcpy(&Z_STRVAL(result->u.constant)[Z_STRLEN(result->u.constant)], "::", sizeof("::")-1);
2409-
memcpy(&Z_STRVAL(result->u.constant)[Z_STRLEN(result->u.constant) + sizeof("::")-1], Z_STRVAL(name->u.constant), Z_STRLEN(name->u.constant)+1);
2408+
memcpy(&Z_STRVAL(result->u.constant)[Z_STRSIZE(result->u.constant)], "::", sizeof("::")-1);
2409+
memcpy(&Z_STRVAL(result->u.constant)[Z_STRSIZE(result->u.constant) + sizeof("::")-1], Z_STRVAL(name->u.constant), Z_STRSIZE(name->u.constant)+1);
24102410
str_efree(Z_STRVAL(name->u.constant));
2411-
Z_STRLEN(result->u.constant) = length;
2411+
Z_STRSIZE(result->u.constant) = length;
24122412
} else {
2413-
length = sizeof("\\")-1 + Z_STRLEN(result->u.constant) + Z_STRLEN(name->u.constant);
2413+
length = sizeof("\\")-1 + Z_STRSIZE(result->u.constant) + Z_STRSIZE(name->u.constant);
24142414
Z_STRVAL(result->u.constant) = erealloc(Z_STRVAL(result->u.constant), length+1);
2415-
memcpy(&Z_STRVAL(result->u.constant)[Z_STRLEN(result->u.constant)], "\\", sizeof("\\")-1);
2416-
memcpy(&Z_STRVAL(result->u.constant)[Z_STRLEN(result->u.constant) + sizeof("\\")-1], Z_STRVAL(name->u.constant), Z_STRLEN(name->u.constant)+1);
2415+
memcpy(&Z_STRVAL(result->u.constant)[Z_STRSIZE(result->u.constant)], "\\", sizeof("\\")-1);
2416+
memcpy(&Z_STRVAL(result->u.constant)[Z_STRSIZE(result->u.constant) + sizeof("\\")-1], Z_STRVAL(name->u.constant), Z_STRSIZE(name->u.constant)+1);
24172417
str_efree(Z_STRVAL(name->u.constant));
2418-
Z_STRLEN(result->u.constant) = length;
2418+
Z_STRSIZE(result->u.constant) = length;
24192419
}
24202420
}
24212421
/* }}} */
@@ -2886,7 +2886,7 @@ void zend_do_begin_catch(znode *catch_token, znode *class_name, znode *catch_var
28862886
opline->op1_type = IS_CONST;
28872887
opline->op1.constant = zend_add_class_name_literal(CG(active_op_array), &catch_class.u.constant TSRMLS_CC);
28882888
opline->op2_type = IS_CV;
2889-
opline->op2.var = lookup_cv(CG(active_op_array), Z_STRVAL(catch_var->u.constant), Z_STRLEN(catch_var->u.constant), 0 TSRMLS_CC);
2889+
opline->op2.var = lookup_cv(CG(active_op_array), Z_STRVAL(catch_var->u.constant), Z_STRSIZE(catch_var->u.constant), 0 TSRMLS_CC);
28902890
Z_STRVAL(catch_var->u.constant) = (char*)CG(active_op_array)->vars[opline->op2.var].name;
28912891
opline->result.num = 0; /* 1 means it's the last catch in the block */
28922892

@@ -4965,7 +4965,7 @@ void zend_do_begin_class_declaration(const znode *class_token, znode *class_name
49654965
return;
49664966
}
49674967

4968-
lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), Z_STRLEN(class_name->u.constant));
4968+
lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), Z_STRSIZE(class_name->u.constant));
49694969

49704970
if (!(strcmp(lcname, "self") && strcmp(lcname, "parent"))) {
49714971
efree(lcname);
@@ -5287,7 +5287,7 @@ void zend_do_declare_property(const znode *var_name, const znode *value, zend_ui
52875287
CG(active_class_entry)->name, Z_STRVAL(var_name->u.constant));
52885288
}
52895289

5290-
if (zend_hash_find(&CG(active_class_entry)->properties_info, Z_STRVAL(var_name->u.constant), Z_STRLEN(var_name->u.constant)+1, (void **) &existing_property_info)==SUCCESS) {
5290+
if (zend_hash_find(&CG(active_class_entry)->properties_info, Z_STRVAL(var_name->u.constant), Z_STRSIZE(var_name->u.constant)+1, (void **) &existing_property_info)==SUCCESS) {
52915291
zend_error(E_COMPILE_ERROR, "Cannot redeclare %s::$%s", CG(active_class_entry)->name, Z_STRVAL(var_name->u.constant));
52925292
}
52935293
ALLOC_ZVAL(property);
@@ -5306,7 +5306,7 @@ void zend_do_declare_property(const znode *var_name, const znode *value, zend_ui
53065306
CG(doc_comment_len) = 0;
53075307
}
53085308

5309-
zend_declare_property_ex(CG(active_class_entry), zend_new_interned_string(Z_STRVAL(var_name->u.constant), Z_STRLEN(var_name->u.constant) + 1, 0 TSRMLS_CC), Z_STRLEN(var_name->u.constant), property, access_type, comment, comment_len TSRMLS_CC);
5309+
zend_declare_property_ex(CG(active_class_entry), zend_new_interned_string(Z_STRVAL(var_name->u.constant), Z_STRSIZE(var_name->u.constant) + 1, 0 TSRMLS_CC), Z_STRSIZE(var_name->u.constant), property, access_type, comment, comment_len TSRMLS_CC);
53105310
efree(Z_STRVAL(var_name->u.constant));
53115311
}
53125312
/* }}} */
@@ -5329,9 +5329,9 @@ void zend_do_declare_class_constant(znode *var_name, const znode *value TSRMLS_D
53295329
ALLOC_ZVAL(property);
53305330
*property = value->u.constant;
53315331

5332-
cname = zend_new_interned_string(Z_STRVAL(var_name->u.constant), Z_STRLEN(var_name->u.constant)+1, 0 TSRMLS_CC);
5333-
hash = str_hash(cname, Z_STRLEN(var_name->u.constant));
5334-
if (zend_hash_quick_add(&CG(active_class_entry)->constants_table, cname, Z_STRLEN(var_name->u.constant)+1, hash, &property, sizeof(zval *), NULL) == FAILURE) {
5332+
cname = zend_new_interned_string(Z_STRVAL(var_name->u.constant), Z_STRSIZE(var_name->u.constant)+1, 0 TSRMLS_CC);
5333+
hash = str_hash(cname, Z_STRSIZE(var_name->u.constant));
5334+
if (zend_hash_quick_add(&CG(active_class_entry)->constants_table, cname, Z_STRSIZE(var_name->u.constant)+1, hash, &property, sizeof(zval *), NULL) == FAILURE) {
53355335
FREE_ZVAL(property);
53365336
zend_error(E_COMPILE_ERROR, "Cannot redefine class constant %s::%s", CG(active_class_entry)->name, Z_STRVAL(var_name->u.constant));
53375337
}
@@ -5782,7 +5782,7 @@ void zend_do_add_static_array_element(znode *result, znode *offset, const znode
57825782
zval_dtor(&offset->u.constant);
57835783
break;
57845784
case IS_STRING:
5785-
zend_symtable_update(Z_ARRVAL(result->u.constant), Z_STRVAL(offset->u.constant), Z_STRLEN(offset->u.constant)+1, &element, sizeof(zval *), NULL);
5785+
zend_symtable_update(Z_ARRVAL(result->u.constant), Z_STRVAL(offset->u.constant), Z_STRSIZE(offset->u.constant)+1, &element, sizeof(zval *), NULL);
57865786
zval_dtor(&offset->u.constant);
57875787
break;
57885788
case IS_NULL:
@@ -5959,7 +5959,7 @@ void zend_do_fetch_static_variable(znode *varname, const znode *static_assignmen
59595959
ALLOC_HASHTABLE(CG(active_op_array)->static_variables);
59605960
zend_hash_init(CG(active_op_array)->static_variables, 2, NULL, ZVAL_PTR_DTOR, 0);
59615961
}
5962-
zend_hash_update(CG(active_op_array)->static_variables, Z_STRVAL(varname->u.constant), Z_STRLEN(varname->u.constant)+1, &tmp, sizeof(zval *), NULL);
5962+
zend_hash_update(CG(active_op_array)->static_variables, Z_STRVAL(varname->u.constant), Z_STRSIZE(varname->u.constant)+1, &tmp, sizeof(zval *), NULL);
59635963

59645964
if (varname->op_type == IS_CONST) {
59655965
if (Z_TYPE(varname->u.constant) != IS_STRING) {
@@ -6385,10 +6385,10 @@ void zend_do_declare_begin(TSRMLS_D) /* {{{ */
63856385

63866386
void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC) /* {{{ */
63876387
{
6388-
if (!zend_binary_strcasecmp(Z_STRVAL(var->u.constant), Z_STRLEN(var->u.constant), "ticks", sizeof("ticks")-1)) {
6388+
if (!zend_binary_strcasecmp(Z_STRVAL(var->u.constant), Z_STRSIZE(var->u.constant), "ticks", sizeof("ticks")-1)) {
63896389
convert_to_long(&val->u.constant);
63906390
CG(declarables).ticks = val->u.constant;
6391-
} else if (!zend_binary_strcasecmp(Z_STRVAL(var->u.constant), Z_STRLEN(var->u.constant), "encoding", sizeof("encoding")-1)) {
6391+
} else if (!zend_binary_strcasecmp(Z_STRVAL(var->u.constant), Z_STRSIZE(var->u.constant), "encoding", sizeof("encoding")-1)) {
63926392
if ((Z_TYPE(val->u.constant) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT) {
63936393
zend_error(E_COMPILE_ERROR, "Cannot use constants as encoding");
63946394
}

ext/standard/file.c

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1814,19 +1814,11 @@ PHP_FUNCTION(fputcsv)
18141814
char escape_char = '\\'; /* allow this to be set as parameter */
18151815
php_stream *stream;
18161816
zval *fp = NULL, *fields = NULL;
1817-
<<<<<<< HEAD
18181817
zend_str_size_int ret;
18191818
char *delimiter_str = NULL, *enclosure_str = NULL, *escape_str = NULL;
18201819
zend_str_size_int delimiter_str_len = 0, enclosure_str_len = 0, escape_str_len = 0;
18211820

1822-
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ra|SS",
1823-
=======
1824-
int ret;
1825-
char *delimiter_str = NULL, *enclosure_str = NULL, *escape_str = NULL;
1826-
int delimiter_str_len = 0, enclosure_str_len = 0, escape_str_len = 0;
1827-
1828-
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ra|sss",
1829-
>>>>>>> Expose fputcsv's escape_char to userland
1821+
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ra|SSS",
18301822
&fp, &fields, &delimiter_str, &delimiter_str_len,
18311823
&enclosure_str, &enclosure_str_len,
18321824
&escape_str, &escape_str_len) == FAILURE) {

0 commit comments

Comments
 (0)