From 1178a87f4483c8285be1de1426437f51e98f360a Mon Sep 17 00:00:00 2001 From: Steffen Nurpmeso Date: Sun, 17 Jun 2018 02:20:00 +0200 Subject: [PATCH] n_var_xoklook(): avoid a possible redundant duplicate lookup --- accmacvar.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/accmacvar.c b/accmacvar.c index 49672b94..24f79156 100644 --- a/accmacvar.c +++ b/accmacvar.c @@ -2984,19 +2984,20 @@ n_var_xoklook(enum okeys okey, struct url const *urlp, nlen = strlen(avc.avc_name); nbuf = n_lofi_alloc(nlen + 1 + us->l +1); memcpy(nbuf, avc.avc_name, nlen); - nbuf[nlen++] = '-'; /* One of .url_u_h_p and .url_h_p we test in here */ - memcpy(nbuf + nlen, us->s, us->l +1); + /*avc.avc_is_chain_variant = TRU1;*/ + nbuf[nlen++] = '-'; + memcpy(&nbuf[nlen], us->s, us->l +1); avc.avc_name = a_amv_var_canonify(nbuf); avc.avc_hash = a_AMV_NAME2HASH(avc.avc_name); if(a_amv_var_lookup(&avc, a_AMV_VLOOK_NONE)) goto jvar; /* The second */ - if(oxm & OXM_H_P){ + if((oxm & (OXM_U_H_P | OXM_H_P)) == (OXM_U_H_P | OXM_H_P)){ us = &urlp->url_h_p; - memcpy(nbuf + nlen, us->s, us->l +1); + memcpy(&nbuf[nlen], us->s, us->l +1); avc.avc_name = a_amv_var_canonify(nbuf); avc.avc_hash = a_AMV_NAME2HASH(avc.avc_name); if(a_amv_var_lookup(&avc, a_AMV_VLOOK_NONE)){ @@ -3007,6 +3008,7 @@ jvar: } jplain: + /*avc.avc_is_chain_variant = FAL0;*/ rv = (oxm & OXM_PLAIN) ? n_var_oklook(okey) : NULL; jleave: if(nbuf != NULL) -- 2.11.4.GIT