From: Alan T. DeKok Date: Wed, 4 Jan 2017 22:06:28 +0000 (-0500) Subject: hoist check to outside of switch statement X-Git-Tag: release_3_0_13~81 X-Git-Url: http://www.project-moonshot.org/gitweb/?a=commitdiff_plain;ds=sidebyside;h=5e2b913eac507b5cdf9f816758fdd3af6863444e;p=freeradius.git hoist check to outside of switch statement --- diff --git a/src/main/map.c b/src/main/map.c index 714c3d2..9b8264b 100644 --- a/src/main/map.c +++ b/src/main/map.c @@ -1386,7 +1386,7 @@ int map_to_request(REQUEST *request, vp_map_t const *map, radius_map_getvalue_t * the RHS. */ cmp = (value_data_cmp_op(map->op, a->da->type, &a->data, a->vp_length, b->da->type, &b->data, b->vp_length) == 0); - switch (map->op) { + if (cmp == 1) switch (map->op) { /* * Keep only matching attributes. @@ -1396,8 +1396,6 @@ int map_to_request(REQUEST *request, vp_map_t const *map, radius_map_getvalue_t case T_OP_NE: case T_OP_REG_EQ: case T_OP_CMP_EQ: - if (cmp == 0) break; - a = fr_cursor_remove(&dst_list); talloc_free(a); break; @@ -1411,8 +1409,6 @@ int map_to_request(REQUEST *request, vp_map_t const *map, radius_map_getvalue_t case T_OP_GT: case T_OP_LE: case T_OP_LT: - if (cmp == 0) break; - DEBUG_OVERWRITE(a, b); (void) value_data_copy(a, &a->data, a->da->type, &b->data, b->vp_length);