From f40955e03cd361966f927acfaa477cfceb8930e5 Mon Sep 17 00:00:00 2001 From: Christian Göttsche Date: Wed, 29 May 2024 20:38:23 +0200 Subject: Avoid dropping const qualifier in casts Adjusts casts to void dropping const qualifiers. This helps to avoid mistakes, e.g. modifying string literals. Also use size_t for length, similar to the upstream php interfaces. --- src/sp_config_scanner.re | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/sp_config_scanner.re') diff --git a/src/sp_config_scanner.re b/src/sp_config_scanner.re index 82359d6..8f0b24e 100644 --- a/src/sp_config_scanner.re +++ b/src/sp_config_scanner.re @@ -197,8 +197,8 @@ zend_result sp_config_scan(const char *data, zend_result (*process_rule)(sp_pars end { ret = SUCCESS; goto out; } "@"? "set" whitespace+ @t1 keyword @t2 whitespace+ @t3 string @t4 whitespace* ";" { if (!cond_res[0]) { goto yyc_init; } - char *key = (char*)t1; - int keylen = t2 - t1; + const char *key = t1; + size_t keylen = t2 - t1; zend_string *tmp = zend_hash_str_find_ptr(&vars, key, keylen); if (tmp) { zend_hash_str_del(&vars, key, keylen); @@ -304,9 +304,9 @@ zend_result sp_config_scan(const char *data, zend_result (*process_rule)(sp_pars goto out; } sp_parsed_keyword kw = { - .kw = (char*)t1, + .kw = t1, .kwlen = t2-t1, - .arg = (char*)t3, + .arg = t3, .arglen = t4-t3, .argtype = SP_ARGTYPE_UNKNOWN, .lineno = lineno @@ -315,7 +315,7 @@ zend_result sp_config_scan(const char *data, zend_result (*process_rule)(sp_pars if (t3 == t4) { kw.argtype = SP_ARGTYPE_EMPTY; } else if (t4-t3 >= 2 && *t3 == '"') { - kw.arg = (char*)t3 + 1; + kw.arg = t3 + 1; kw.arglen = t4 - t3 - 2; kw.argtype = SP_ARGTYPE_STR; } else { -- cgit v1.3