fix datatype mismatches

and convert APIs to size_t where zend_string internally used
This commit is contained in:
Anatol Belski 2014-10-24 20:47:26 +02:00
parent f7d3355e75
commit 283947af74
3 changed files with 24 additions and 24 deletions

View file

@ -1107,7 +1107,7 @@ ZEND_API zend_string *zend_mangle_property_name(const char *src1, size_t src1_le
} }
/* }}} */ /* }}} */
static int zend_strnlen(const char* s, size_t maxlen) /* {{{ */ static size_t zend_strnlen(const char* s, size_t maxlen) /* {{{ */
{ {
size_t len = 0; size_t len = 0;
while (*s++ && maxlen--) len++; while (*s++ && maxlen--) len++;
@ -3818,7 +3818,7 @@ void zend_compile_params(zend_ast *ast TSRMLS_DC) /* {{{ */
arg_info = &arg_infos[i]; arg_info = &arg_infos[i];
arg_info->name = estrndup(name->val, name->len); arg_info->name = estrndup(name->val, name->len);
arg_info->name_len = name->len; arg_info->name_len = (uint32_t)name->len;
arg_info->pass_by_reference = is_ref; arg_info->pass_by_reference = is_ref;
arg_info->is_variadic = is_variadic; arg_info->is_variadic = is_variadic;
arg_info->type_hint = 0; arg_info->type_hint = 0;
@ -3862,7 +3862,7 @@ void zend_compile_params(zend_ast *ast TSRMLS_DC) /* {{{ */
arg_info->type_hint = IS_OBJECT; arg_info->type_hint = IS_OBJECT;
arg_info->class_name = estrndup(class_name->val, class_name->len); arg_info->class_name = estrndup(class_name->val, class_name->len);
arg_info->class_name_len = class_name->len; arg_info->class_name_len = (uint32_t)class_name->len;
zend_string_release(class_name); zend_string_release(class_name);

View file

@ -161,7 +161,7 @@ void clean_non_persistent_constants(TSRMLS_D)
} }
} }
ZEND_API void zend_register_null_constant(const char *name, uint name_len, int flags, int module_number TSRMLS_DC) ZEND_API void zend_register_null_constant(const char *name, size_t name_len, int flags, int module_number TSRMLS_DC)
{ {
zend_constant c; zend_constant c;
@ -172,7 +172,7 @@ ZEND_API void zend_register_null_constant(const char *name, uint name_len, int f
zend_register_constant(&c TSRMLS_CC); zend_register_constant(&c TSRMLS_CC);
} }
ZEND_API void zend_register_bool_constant(const char *name, uint name_len, zend_bool bval, int flags, int module_number TSRMLS_DC) ZEND_API void zend_register_bool_constant(const char *name, size_t name_len, zend_bool bval, int flags, int module_number TSRMLS_DC)
{ {
zend_constant c; zend_constant c;
@ -183,7 +183,7 @@ ZEND_API void zend_register_bool_constant(const char *name, uint name_len, zend_
zend_register_constant(&c TSRMLS_CC); zend_register_constant(&c TSRMLS_CC);
} }
ZEND_API void zend_register_long_constant(const char *name, uint name_len, zend_long lval, int flags, int module_number TSRMLS_DC) ZEND_API void zend_register_long_constant(const char *name, size_t name_len, zend_long lval, int flags, int module_number TSRMLS_DC)
{ {
zend_constant c; zend_constant c;
@ -195,7 +195,7 @@ ZEND_API void zend_register_long_constant(const char *name, uint name_len, zend_
} }
ZEND_API void zend_register_double_constant(const char *name, uint name_len, double dval, int flags, int module_number TSRMLS_DC) ZEND_API void zend_register_double_constant(const char *name, size_t name_len, double dval, int flags, int module_number TSRMLS_DC)
{ {
zend_constant c; zend_constant c;
@ -207,7 +207,7 @@ ZEND_API void zend_register_double_constant(const char *name, uint name_len, dou
} }
ZEND_API void zend_register_stringl_constant(const char *name, uint name_len, char *strval, uint strlen, int flags, int module_number TSRMLS_DC) ZEND_API void zend_register_stringl_constant(const char *name, size_t name_len, char *strval, size_t strlen, int flags, int module_number TSRMLS_DC)
{ {
zend_constant c; zend_constant c;
@ -219,12 +219,12 @@ ZEND_API void zend_register_stringl_constant(const char *name, uint name_len, ch
} }
ZEND_API void zend_register_string_constant(const char *name, uint name_len, char *strval, int flags, int module_number TSRMLS_DC) ZEND_API void zend_register_string_constant(const char *name, size_t name_len, char *strval, int flags, int module_number TSRMLS_DC)
{ {
zend_register_stringl_constant(name, name_len, strval, strlen(strval), flags, module_number TSRMLS_CC); zend_register_stringl_constant(name, name_len, strval, strlen(strval), flags, module_number TSRMLS_CC);
} }
static zend_constant *zend_get_special_constant(const char *name, uint name_len TSRMLS_DC) static zend_constant *zend_get_special_constant(const char *name, size_t name_len TSRMLS_DC)
{ {
zend_constant *c; zend_constant *c;
static char haltoff[] = "__COMPILER_HALT_OFFSET__"; static char haltoff[] = "__COMPILER_HALT_OFFSET__";
@ -236,7 +236,7 @@ static zend_constant *zend_get_special_constant(const char *name, uint name_len
/* Returned constants may be cached, so they have to be stored */ /* Returned constants may be cached, so they have to be stored */
if (EG(scope) && EG(scope)->name) { if (EG(scope) && EG(scope)->name) {
int const_name_len; size_t const_name_len;
zend_string *const_name; zend_string *const_name;
const_name_len = sizeof("\0__CLASS__") + EG(scope)->name->len; const_name_len = sizeof("\0__CLASS__") + EG(scope)->name->len;
@ -265,7 +265,7 @@ static zend_constant *zend_get_special_constant(const char *name, uint name_len
!memcmp(name, "__COMPILER_HALT_OFFSET__", sizeof("__COMPILER_HALT_OFFSET__")-1)) { !memcmp(name, "__COMPILER_HALT_OFFSET__", sizeof("__COMPILER_HALT_OFFSET__")-1)) {
const char *cfilename; const char *cfilename;
zend_string *haltname; zend_string *haltname;
int clen; size_t clen;
cfilename = zend_get_executed_filename(TSRMLS_C); cfilename = zend_get_executed_filename(TSRMLS_C);
clen = strlen(cfilename); clen = strlen(cfilename);
@ -281,7 +281,7 @@ static zend_constant *zend_get_special_constant(const char *name, uint name_len
} }
ZEND_API zval *zend_get_constant_str(const char *name, uint name_len TSRMLS_DC) ZEND_API zval *zend_get_constant_str(const char *name, size_t name_len TSRMLS_DC)
{ {
zend_constant *c; zend_constant *c;
ALLOCA_FLAG(use_heap) ALLOCA_FLAG(use_heap)
@ -330,7 +330,7 @@ ZEND_API zval *zend_get_constant_ex(zend_string *cname, zend_class_entry *scope,
zend_class_entry *ce = NULL; zend_class_entry *ce = NULL;
zend_string *class_name; zend_string *class_name;
const char *name = cname->val; const char *name = cname->val;
uint name_len = cname->len; size_t name_len = cname->len;
/* Skip leading \\ */ /* Skip leading \\ */
if (name[0] == '\\') { if (name[0] == '\\') {
@ -342,7 +342,7 @@ ZEND_API zval *zend_get_constant_ex(zend_string *cname, zend_class_entry *scope,
if ((colon = zend_memrchr(name, ':', name_len)) && if ((colon = zend_memrchr(name, ':', name_len)) &&
colon > name && (*(colon - 1) == ':')) { colon > name && (*(colon - 1) == ':')) {
int class_name_len = colon - name - 1; int class_name_len = colon - name - 1;
int const_name_len = name_len - class_name_len - 2; size_t const_name_len = name_len - class_name_len - 2;
zend_string *constant_name = zend_string_init(colon + 1, const_name_len, 0); zend_string *constant_name = zend_string_init(colon + 1, const_name_len, 0);
char *lcname; char *lcname;
zval *ret_constant = NULL; zval *ret_constant = NULL;
@ -408,10 +408,10 @@ ZEND_API zval *zend_get_constant_ex(zend_string *cname, zend_class_entry *scope,
if ((colon = zend_memrchr(name, '\\', name_len)) != NULL) { if ((colon = zend_memrchr(name, '\\', name_len)) != NULL) {
/* compound constant name */ /* compound constant name */
int prefix_len = colon - name; int prefix_len = colon - name;
int const_name_len = name_len - prefix_len - 1; size_t const_name_len = name_len - prefix_len - 1;
const char *constant_name = colon + 1; const char *constant_name = colon + 1;
char *lcname; char *lcname;
int lcname_len; size_t lcname_len;
ALLOCA_FLAG(use_heap) ALLOCA_FLAG(use_heap)
lcname_len = prefix_len + 1 + const_name_len; lcname_len = prefix_len + 1 + const_name_len;

View file

@ -66,14 +66,14 @@ int zend_shutdown_constants(TSRMLS_D);
void zend_register_standard_constants(TSRMLS_D); void zend_register_standard_constants(TSRMLS_D);
void clean_non_persistent_constants(TSRMLS_D); void clean_non_persistent_constants(TSRMLS_D);
ZEND_API zval *zend_get_constant(zend_string *name TSRMLS_DC); ZEND_API zval *zend_get_constant(zend_string *name TSRMLS_DC);
ZEND_API zval *zend_get_constant_str(const char *name, uint name_len TSRMLS_DC); ZEND_API zval *zend_get_constant_str(const char *name, size_t name_len TSRMLS_DC);
ZEND_API zval *zend_get_constant_ex(zend_string *name, zend_class_entry *scope, zend_ulong flags TSRMLS_DC); ZEND_API zval *zend_get_constant_ex(zend_string *name, zend_class_entry *scope, zend_ulong flags TSRMLS_DC);
ZEND_API void zend_register_bool_constant(const char *name, uint name_len, zend_bool bval, int flags, int module_number TSRMLS_DC); ZEND_API void zend_register_bool_constant(const char *name, size_t name_len, zend_bool bval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_null_constant(const char *name, uint name_len, int flags, int module_number TSRMLS_DC); ZEND_API void zend_register_null_constant(const char *name, size_t name_len, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_long_constant(const char *name, uint name_len, zend_long lval, int flags, int module_number TSRMLS_DC); ZEND_API void zend_register_long_constant(const char *name, size_t name_len, zend_long lval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_double_constant(const char *name, uint name_len, double dval, int flags, int module_number TSRMLS_DC); ZEND_API void zend_register_double_constant(const char *name, size_t name_len, double dval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_string_constant(const char *name, uint name_len, char *strval, int flags, int module_number TSRMLS_DC); ZEND_API void zend_register_string_constant(const char *name, size_t name_len, char *strval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_stringl_constant(const char *name, uint name_len, char *strval, uint strlen, int flags, int module_number TSRMLS_DC); ZEND_API void zend_register_stringl_constant(const char *name, size_t name_len, char *strval, size_t strlen, int flags, int module_number TSRMLS_DC);
ZEND_API int zend_register_constant(zend_constant *c TSRMLS_DC); ZEND_API int zend_register_constant(zend_constant *c TSRMLS_DC);
void zend_copy_constants(HashTable *target, HashTable *sourc); void zend_copy_constants(HashTable *target, HashTable *sourc);
zend_constant *zend_quick_get_constant(const zval *key, zend_ulong flags TSRMLS_DC); zend_constant *zend_quick_get_constant(const zval *key, zend_ulong flags TSRMLS_DC);