Re: [PATCH 06/12] add range clone functions
Bo Yang <struggleyb.nku@gmail.com> writes:
Show 22 quoted lines
> Both single range clone and deeply clone are supported.
>
> Signed-off-by: Bo Yang <struggleyb.nku@gmail.com>
> ---
> line.c | 35 +++++++++++++++++++++++++++++++++++
> line.h | 4 ++++
> 2 files changed, 39 insertions(+), 0 deletions(-)
>
> diff --git a/line.c b/line.c
> index 7b7f3f3..f765a03 100644
> --- a/line.c
> +++ b/line.c
> @@ -370,6 +370,41 @@ void diff_line_range_append(struct diff_line_range *r, const char *arg)
> r->ranges[r->nr - 1].arg = arg;
> }
>
> +struct diff_line_range *diff_line_range_clone(struct diff_line_range *r)
> +{
> + struct diff_line_range *ret = xmalloc(sizeof(*ret));
> +
> + DIFF_LINE_RANGE_INIT(ret);
> + ret->ranges = xcalloc(sizeof(struct range), r->nr);Please don't break the calloc(nmemb, size-of-one-member) convention.