From 524801d9c4c190087be05f4ff4ca0b37131a3484 Mon Sep 17 00:00:00 2001 From: Rocco Rutte Date: Sun, 15 Feb 2009 16:09:50 +0100 Subject: Support spaces in Attach: pseudoheader. Closes #3179. --- headers.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'headers.c') diff --git a/headers.c b/headers.c index 0aa79154..ea085715 100644 --- a/headers.c +++ b/headers.c @@ -148,18 +148,27 @@ void mutt_edit_headers (const char *editor, BODY *body; BODY *parts; char *q; + int l = 0; p = cur->data + 7; SKIPWS (p); if (*p) { - if ((q = strpbrk (p, " \t"))) + for (q = p; *q && *q != ' ' && *q != '\t'; q++) { - mutt_substrcpy (path, p, q, sizeof (path)); - SKIPWS (q); + if (*q == '\\') + { + if (!*(q+1)) + break; + q++; + } + if (l < sizeof (path) - 1) + path[l++] = *q; } - else - strfcpy (path, p, sizeof (path)); + *q++ = 0; + SKIPWS (q); + path[l] = 0; + mutt_expand_path (path, sizeof (path)); if ((body = mutt_make_file_attach (path))) { -- cgit v1.2.3