http: fix charset detection of extract_content_type()
extract_content_type() could not extract a charset parameter if the
parameter is not the first one and there is a whitespace and a following
semicolon just before the parameter. For example:
text/plain; format=fixed ;charset=utf-8
And it also could not handle correctly some other cases, such as:
text/plain; charset=utf-8; format=fixed
text/plain; some-param="a long value with ;semicolons;"; charset=utf-8
Thanks-to: Jeff King <peff@peff.net>
Signed-off-by: Yi EungJun <eungjun.yi@navercorp.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
c553fd1c1e
commit
f34a655d4d
@ -191,5 +191,10 @@ test_expect_success 'http error messages are reencoded' '
|
||||
grep "this is the error message" stderr
|
||||
'
|
||||
|
||||
test_expect_success 'reencoding is robust to whitespace oddities' '
|
||||
test_must_fail git clone "$HTTPD_URL/error/odd-spacing" 2>stderr &&
|
||||
grep "this is the error message" stderr
|
||||
'
|
||||
|
||||
stop_httpd
|
||||
test_done
|
||||
|
||||
Reference in New Issue
Block a user