File tree Expand file tree Collapse file tree 4 files changed +15
-3
lines changed Expand file tree Collapse file tree 4 files changed +15
-3
lines changed Original file line number Diff line number Diff line change @@ -341,9 +341,7 @@ def _fold(self, folded):
341
341
# avoid infinite recursion.
342
342
ws = part .pop_leading_fws ()
343
343
if ws is not None :
344
- # Peel off the leading whitespace and make it sticky, to
345
- # avoid infinite recursion.
346
- folded .stickyspace = str (part .pop (0 ))
344
+ folded .stickyspace = str (ws )
347
345
if folded .append_if_fits (part ):
348
346
continue
349
347
if part .has_fws :
Original file line number Diff line number Diff line change @@ -2711,5 +2711,17 @@ def test_whitespace_splitting(self):
2711
2711
self ._test (parser .get_unstructured ('xxx ' + 'y' * 77 ),
2712
2712
'xxx \n ' + 'y' * 77 + '\n ' )
2713
2713
2714
+ def test_long_filename_attachment (self ):
2715
+ folded = self .policy .fold ('Content-Disposition' , 'attachment; filename="TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TES.txt"' )
2716
+ self .assertEqual (
2717
+ 'Content-Disposition: attachment;\n filename="TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TES.txt"\n ' ,
2718
+ folded
2719
+ )
2720
+ folded = self .policy .fold ('Content-Disposition' , 'attachment; filename="TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_T.txt"' )
2721
+ self .assertEqual (
2722
+ 'Content-Disposition: attachment;\n filename="TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_TEST_T.txt"\n ' ,
2723
+ folded
2724
+ )
2725
+
2714
2726
if __name__ == '__main__' :
2715
2727
unittest .main ()
Original file line number Diff line number Diff line change @@ -630,6 +630,7 @@ Wouter van Heyst
630
630
Kelsey Hightower
631
631
Jason Hildebrand
632
632
Aaron Hill
633
+ Joel Hillacre
633
634
Richie Hindle
634
635
Konrad Hinsen
635
636
David Hobley
Original file line number Diff line number Diff line change
1
+ Fix email header value parser dropping folding white space in certain cases.
You can’t perform that action at this time.
0 commit comments