index 800fd88c9ae9979bf44c91fea54c092cdafdb33c..919d0920abfc0bd2becbcc35fd065514b9651281 100644 (file)
--- a/quote.c
+++ b/quote.c
char *to_free = NULL;
if (dst->buf == src)
- to_free = strbuf_detach(dst);
+ to_free = strbuf_detach(dst, NULL);
strbuf_addch(dst, '\'');
while (*src) {
- size_t len = strcspn(src, "'\\");
+ size_t len = strcspn(src, "'!");
strbuf_add(dst, src, len);
src += len;
while (need_bs_quote(*src)) {