X-Git-Url: http://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftal%2Ftalloc%2Ftalloc.c;h=ab96ff78a7e878b1c630df847ef27316e501998d;hp=ad21b704d2acc5a0e9b386ce6288500614160d81;hb=ed6dd33e06c0e8f1c4dd006e0b70d9f2d6ba6c09;hpb=3c164cd21a13bd3904117f6a33e06945f0f1850c diff --git a/ccan/tal/talloc/talloc.c b/ccan/tal/talloc/talloc.c index ad21b704..ab96ff78 100644 --- a/ccan/tal/talloc/talloc.c +++ b/ccan/tal/talloc/talloc.c @@ -1,6 +1,5 @@ /* Licensed under LGPL - see LICENSE file for details */ #include -#include #include #include @@ -141,6 +140,13 @@ bool tal_talloc_resize_(tal_t **ctxp, size_t size, size_t count) *ctxp = newp; return true; } + + /* count is unsigned, not size_t, so check for overflow here! */ + if ((unsigned)count != count) { + call_error("Resize overflos"); + return false; + } + newp = _talloc_realloc_array(NULL, *ctxp, size, count, NULL); if (!newp) { call_error("Resize failure");