X-Git-Url: http://rtime.felk.cvut.cz/gitweb/git.git/blobdiff_plain/fc4b10cd2dd4f23443d1c639b9c38a604fff3aa3..HEAD:/quote.c diff --git a/quote.c b/quote.c index acb6bf929..fc9343572 100644 --- a/quote.c +++ b/quote.c @@ -213,7 +213,7 @@ static size_t quote_c_style_counted(const char *name, ssize_t maxlen, int ch; len = next_quote_pos(p, maxlen); - if (len == maxlen || !p[len]) + if (len == maxlen || (maxlen < 0 && !p[len])) break; if (!no_dq && p == name) @@ -223,6 +223,8 @@ static size_t quote_c_style_counted(const char *name, ssize_t maxlen, EMIT('\\'); p += len; ch = (unsigned char)*p++; + if (maxlen >= 0) + maxlen -= len + 1; if (sq_lookup[ch] >= ' ') { EMIT(sq_lookup[ch]); } else {