From c03ebf7ffec285c040450a1882687d762c7b1b4f Mon Sep 17 00:00:00 2001 From: Zhidao HONG Date: Fri, 14 Oct 2022 14:00:02 +0800 Subject: [PATCH] Configuration: stopped automatic migration to the "share" behavior. This commit removed the $uri auto-append for the "share" option introduced in rev be6409cdb028. The main reason is that it causes problems when preparing Unit configurations to be loaded at startup from the state directory. E.g. Docker. A valid conf.json file with $uri references will end up with $uri$uri due to the auto-append. --- docs/changes.xml | 6 ++++++ src/nxt_conf_validation.c | 21 --------------------- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/docs/changes.xml b/docs/changes.xml index 96877044..5a57f19e 100644 --- a/docs/changes.xml +++ b/docs/changes.xml @@ -31,6 +31,12 @@ NGINX Unit updated to 1.29.0. date="" time="" packager="Nginx Packaging <nginx-packaging@f5.com>"> + + +removed $uri auto-append for "share" when loading configuration. + + + compatibility with PHP 8.2. diff --git a/src/nxt_conf_validation.c b/src/nxt_conf_validation.c index fe6c22e5..f8242f6e 100644 --- a/src/nxt_conf_validation.c +++ b/src/nxt_conf_validation.c @@ -1690,11 +1690,6 @@ static nxt_int_t nxt_conf_vldt_share(nxt_conf_validation_t *vldt, nxt_conf_value_t *value, void *data) { - u_char *p; - nxt_str_t name, temp; - - static nxt_str_t uri = nxt_string("$uri"); - if (nxt_conf_type(value) == NXT_CONF_ARRAY) { if (nxt_conf_array_elements_count(value) == 0) { return nxt_conf_vldt_error(vldt, "The \"share\" array " @@ -1707,22 +1702,6 @@ nxt_conf_vldt_share(nxt_conf_validation_t *vldt, nxt_conf_value_t *value, /* NXT_CONF_STRING */ - if (vldt->ver < 12600) { - nxt_conf_get_string(value, &name); - - temp.length = name.length + uri.length; - - temp.start = nxt_mp_get(vldt->conf_pool, temp.length); - if (nxt_slow_path(temp.start == NULL)) { - return NXT_ERROR; - } - - p = nxt_cpymem(temp.start, name.start, name.length); - nxt_memcpy(p, uri.start, uri.length); - - nxt_conf_set_string(value, &temp); - } - return nxt_conf_vldt_share_element(vldt, value); }