# HG changeset patch # User Alex Gaynor # Date 2018-01-17 21:36:18 # Node ID cf2e2a7399bc2e7ea5dccc7de546ce107cf5f3aa # Parent 9c575c22dcf4305db2160dc45350ba8e40cf5e60 bdiff: handle the possibility of an integer overflow when allocating Differential Revision: https://phab.mercurial-scm.org/D1877 diff --git a/mercurial/bdiff.c b/mercurial/bdiff.c --- a/mercurial/bdiff.c +++ b/mercurial/bdiff.c @@ -41,7 +41,7 @@ int bdiff_splitlines(const char *a, ssiz if (p == plast) i++; - *lr = l = (struct bdiff_line *)malloc(sizeof(struct bdiff_line) * i); + *lr = l = (struct bdiff_line *)calloc(i, sizeof(struct bdiff_line)); if (!l) return -1;