X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=lib%2Ffold%2Ffold.c;h=812a324839223df6fd43af74f5549754fb6a0146;hp=fd23b066f3e58b49c107176d5957c8eaae68b845;hb=e1e5d7f8169f36978a08078582c4cd1d2e71264e;hpb=d28e414354d791a8c010cf6069bfc549d4343811 diff --git a/lib/fold/fold.c b/lib/fold/fold.c index fd23b06..812a324 100644 --- a/lib/fold/fold.c +++ b/lib/fold/fold.c @@ -36,8 +36,10 @@ void fold_text(const char *text, assert(bytes != (size_t)-1); - /* we'll get a zero size for the nul terminator */ - if (!bytes) { + /* we'll get a zero size for the nul terminator, (size_t) -2 + * if we've reached the end of the buffer, or (size_t) -1 on + * error */ + if (!bytes || bytes == (size_t) -2 || bytes == (size_t) -1) { line_cb(arg, start, end - start); break; }