summaryrefslogtreecommitdiff
path: root/levenshtein.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2016-02-22 22:44:25 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-02-22 22:51:09 (GMT)
commitb32fa95fd8293ebfecb2b7b6c8d460579318f9fe (patch)
tree09af1e6cc980e672e7deefe4bc8f8844a25f14b2 /levenshtein.c
parent850d2fec53ee188bab9e458f77906041ac7f1904 (diff)
downloadgit-b32fa95fd8293ebfecb2b7b6c8d460579318f9fe.zip
git-b32fa95fd8293ebfecb2b7b6c8d460579318f9fe.tar.gz
git-b32fa95fd8293ebfecb2b7b6c8d460579318f9fe.tar.bz2
convert trivial cases to ALLOC_ARRAY
Each of these cases can be converted to use ALLOC_ARRAY or REALLOC_ARRAY, which has two advantages: 1. It automatically checks the array-size multiplication for overflow. 2. It always uses sizeof(*array) for the element-size, so that it can never go out of sync with the declared type of the array. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'levenshtein.c')
-rw-r--r--levenshtein.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/levenshtein.c b/levenshtein.c
index fc28159..d263269 100644
--- a/levenshtein.c
+++ b/levenshtein.c
@@ -42,11 +42,13 @@ int levenshtein(const char *string1, const char *string2,
int w, int s, int a, int d)
{
int len1 = strlen(string1), len2 = strlen(string2);
- int *row0 = xmalloc(sizeof(int) * (len2 + 1));
- int *row1 = xmalloc(sizeof(int) * (len2 + 1));
- int *row2 = xmalloc(sizeof(int) * (len2 + 1));
+ int *row0, *row1, *row2;
int i, j;
+ ALLOC_ARRAY(row0, len2 + 1);
+ ALLOC_ARRAY(row1, len2 + 1);
+ ALLOC_ARRAY(row2, len2 + 1);
+
for (j = 0; j <= len2; j++)
row1[j] = j * a;
for (i = 0; i < len1; i++) {