src/mime/grammar.go | 2 ++ src/mime/mediatype_test.go | 3 +++ diff --git a/src/mime/grammar.go b/src/mime/grammar.go index cc578fbcfd4168124bdc6415b872d83e9bc541dd..1efd8a16dec607de16233b9279e4b45ff2f1a964 100644 --- a/src/mime/grammar.go +++ b/src/mime/grammar.go @@ -62,7 +62,9 @@ 1<<'.' | 1<<'^' | 1<<'_' | 1<<'`' | + 1<<'{' | 1<<'|' | + 1<<'}' | 1<<'~' return ((uint64(1)<>64)) != 0 diff --git a/src/mime/mediatype_test.go b/src/mime/mediatype_test.go index 251df8d6691ab9abc0112b9c994e07fb739d63d4..da8d64de7a3f0cbc7c855fd002fbb65e8a5a9d15 100644 --- a/src/mime/mediatype_test.go +++ b/src/mime/mediatype_test.go @@ -413,6 +413,9 @@ // Issue #48866: duplicate parameters containing equal values should be allowed {`text; charset=utf-8; charset=utf-8; format=fixed`, "text", m("charset", "utf-8", "format", "fixed")}, {`text; charset=utf-8; format=flowed; charset=utf-8`, "text", m("charset", "utf-8", "format", "flowed")}, + + // Issue #76236: '{' and '}' are token chars. + {"attachment; filename={file}.png", "attachment", m("filename", "{file}.png")}, } }