php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login | |
Patch htscanner_php7.0.patch for htscanner Bug #72269Patch version 2016-07-03 10:11 UTC Return to Bug #72269 | Download this patchThis patch renders other patches obsolete Obsolete patches:
Developer: roel@abittechnical.com--- htscanner.c 2012-03-01 16:14:32.000000000 +0100 +++ htscanner.c 2016-07-02 23:19:32.023206655 +0200 @@ -147,8 +147,16 @@ +++ htscanner.c 2016-07-03 12:08:30.700863832 +0200 @@ -147,18 +147,40 @@ #endif #if PHP_VERSION_ID < 50204 if (zend_alter_ini_entry(name, name_len + 1, value, value_len, mode, PHP_INI_STAGE_RUNTIME) == FAILURE) { -#else +#elif PHP_VERSION_ID < 70000 if (zend_alter_ini_entry(name, name_len + 1, value, value_len, mode, PHP_INI_STAGE_HTACCESS) == FAILURE) { +#else + zend_string *zname, *zvalue; + zname = zend_string_init(name, name_len, 0); + zvalue = zend_string_init(value, value_len, 0); + zname = zend_string_init(name, name_len, 1); + zvalue = zend_string_init(value, value_len, 1); + int res = zend_alter_ini_entry(zname, zvalue, mode, PHP_INI_STAGE_HTACCESS); + zend_string_release(zname); + zend_string_release(zvalue); + if (res == FAILURE) { #endif htscanner_debug("zend_alter_ini_entry failed!"); if (HTG(verbose)) { @@ -157,8 +165,21 @@ zend_error(E_WARNING, "Adding option (Name: '%s' Value: '%s') (%lu, %lu) failed!\n", name, value, name_len, value_len); } +#if PHP_VERSION_ID >= 70000 + zend_string_release(zname); + zend_string_release(zvalue); +#endif return FAILURE; } +#if PHP_VERSION_ID < 70000 if (ini_entries) zend_hash_update(ini_entries, name, name_len + 1, value, value_len + 1, NULL); +#else + zname = zend_string_init(name, name_len, 1); + zvalue = zend_string_init(value, value_len, 1); + + zval zval_value; + ZVAL_STR(&zval_value, zvalue); + + if (ini_entries) + zend_hash_update(ini_entries, zname, &zval_value); + else + zend_string_release(zvalue); + + zend_string_release(zname); +#endif return SUCCESS; } @@ -186,7 +207,11 @@ @@ -186,7 +208,11 @@ } #endif +#if PHP_VERSION_ID < 70000 +#endif if (stream != NULL) { char buf[FILE_BUFFER], *bufp, *tok, *value; int flag, parse = 1; @@ -259,7 +284,7 @@ @@ -259,7 +285,7 @@ PHP_INI_BEGIN() STD_PHP_INI_ENTRY("htscanner.config_file", ".htaccess", PHP_INI_SYSTEM, OnUpdateString, config_file, zend_htscanner_globals, htscanner_globals) STD_PHP_INI_ENTRY("htscanner.default_docroot", "/", PHP_INI_SYSTEM, OnUpdateString, default_docroot, zend_htscanner_globals, htscanner_globals) -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) +#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) || PHP_MAJOR_VERSION >= 7 STD_PHP_INI_ENTRY("htscanner.default_ttl", "300", PHP_INI_SYSTEM, OnUpdateLong, default_ttl, zend_htscanner_globals, htscanner_globals) STD_PHP_INI_ENTRY("htscanner.stop_on_error", "0", PHP_INI_SYSTEM, OnUpdateLong, stop_on_error, zend_htscanner_globals, htscanner_globals) STD_PHP_INI_ENTRY("htscanner.verbose", "0", PHP_INI_SYSTEM, OnUpdateLong, verbose, zend_htscanner_globals, htscanner_globals) @@ -274,12 +299,23 @@ @@ -274,12 +300,23 @@ htscannerMutexDeclare(ini_entries_cache_mutex); static HashTable *ini_entries_cache = NULL; +#if PHP_VERSION_ID < 70000 +#endif static int php_htscanner_create_cache() /* {{{ */ { @@ -347,31 +383,62 @@ @@ -347,31 +384,57 @@ #endif htscannerMutexLock(ini_entries_cache_mutex); +#if PHP_VERSION_ID < 70000 Line 123 (now 125), was 14 lines, now 9 lines -#else +#elif PHP_VERSION_ID < 70000 if (zend_alter_ini_entry(name, len, value, strlen(value), PHP_INI_PERDIR, PHP_INI_STAGE_HTACCESS) == FAILURE) { +#else + zend_string *zname, *zvalue; + zname = zend_string_dup(name, 0); + zvalue = zend_string_dup(Z_STR_P(value), 0); + int res = zend_alter_ini_entry(zname, zvalue, PHP_INI_PERDIR, PHP_INI_STAGE_HTACCESS); + zend_string_release(zname); + zend_string_release(zvalue); + int res = zend_alter_ini_entry(name, Z_STR_P(value), PHP_INI_PERDIR, PHP_INI_STAGE_HTACCESS); + if (res == FAILURE) { #endif char msg[1024]; +#if PHP_VERSION_ID < 70000 +#endif htscannerMutexUnlock(ini_entries_cache_mutex); return SUCCESS; } @@ -405,8 +472,13 @@ @@ -405,8 +468,13 @@ } } +#if PHP_VERSION_ID < 70000 |
Copyright © 2001-2024 The PHP Group All rights reserved. |
Last updated: Tue Oct 15 03:01:26 2024 UTC |