> On Mar 13, 2019, at 9:32 AM, Andrey Borodin <x4...@yandex-team.ru> wrote: > > > >> 13 марта 2019 г., в 21:05, Paul Ramsey <pram...@cleverelephant.ca> >> написал(а): >> >> Here is a new (final?) patch ... >> >> <compressed-datum-slicing-20190313a.patch> > > This check > > @@ -744,6 +748,8 @@ pglz_decompress(const char *source, int32 slen, char > *dest, > { > *dp = dp[-off]; > dp++; > + if (dp >= destend) /* check for > buffer overrun */ > + break; /* do not > clobber memory */ > } > > is still done for every byte. You can precompute maximum allowed length > before that cycle. Here's diff
Thanks! Attached change, P
compressed-datum-slicing-20190313b.patch
Description: Binary data