From: Willy Tarreau Date: Tue, 26 Jan 2010 18:02:46 +0000 (+0100) Subject: [CLEANUP] acl, patterns: make use of my_strndup() instead of malloc+memcpy X-Git-Tag: v1.4-rc1~38 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ac778f5ade43bc3798a286ee6cf7f7cd1d323888;p=thirdparty%2Fhaproxy.git [CLEANUP] acl, patterns: make use of my_strndup() instead of malloc+memcpy This is simpler and more readable. --- diff --git a/src/acl.c b/src/acl.c index 0ded6bf82b..0634d5d744 100644 --- a/src/acl.c +++ b/src/acl.c @@ -668,11 +668,8 @@ struct acl_expr *parse_acl_expr(const char **args) end = strchr(arg, ')'); if (!end) goto out_free_expr; - arg2 = (char *)calloc(1, end - arg + 1); - if (!arg2) + arg2 = my_strndup(arg, end - arg); goto out_free_expr; - memcpy(arg2, arg, end - arg); - arg2[end-arg] = '\0'; expr->arg_len = end - arg; expr->arg.str = arg2; } diff --git a/src/pattern.c b/src/pattern.c index 5afd068e94..63bae2b8ca 100644 --- a/src/pattern.c +++ b/src/pattern.c @@ -397,9 +397,7 @@ struct pattern_expr *pattern_parse_expr(char **str, int *idx) if (end != endw) { expr->arg_len = end - endw - 2; - expr->arg = malloc(expr->arg_len + 1); - expr->arg = memcpy(expr->arg, endw + 1, expr->arg_len); - expr->arg[expr->arg_len] = '\0'; + expr->arg = my_strndup(endw + 1, expr->arg_len); } for (*idx += 1; *(str[*idx]); (*idx)++) {