X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fdynarr.c;h=5dfc79d35e19f502463e40d4b96558a1cd8eeaf2;hb=1f1bfe73bd662f6208bcaf7ac64f71342b1eeb9e;hp=9a173a952b5d4a87e207e4a7643780db8363c563;hpb=3e447015251ce6dcde843cbed10d9033d5538622;p=chise%2Fxemacs-chise.git.1 diff --git a/src/dynarr.c b/src/dynarr.c index 9a173a9..5dfc79d 100644 --- a/src/dynarr.c +++ b/src/dynarr.c @@ -116,7 +116,8 @@ Dynarr_realloc (Dynarr *dy, int new_size) if (DUMPEDP (dy->base)) { void *new_base = malloc (new_size); - memcpy (new_base, dy->base, dy->max > new_size ? new_size : dy->max); + int max_bytes = dy->max * dy->elsize; + memcpy (new_base, dy->base, max_bytes > new_size ? new_size : max_bytes); dy->base = new_base; } else