Fix parse failure observed with tvdevice sample.
Commitc40d2bc0c9
has a problem at removing the parentheses in parser_parse_responseline. Difference of pointers was used with intention, don't cast them separately. (cherry picked from commit7178f300bb
)
This commit is contained in:
parent
168444761d
commit
cca16cbead
@ -318,6 +318,15 @@ Version 1.8.0
|
||||
Version 1.6.16
|
||||
*******************************************************************************
|
||||
|
||||
2012-03-14 Yoichi NAKAYAMA <yoichi.nakayama(at)gmail.com>
|
||||
|
||||
Fix parse failure observed with tvdevice sample.
|
||||
|
||||
Commit c40d2bc0c9b60c43b641ac4669c7b8bbcd6134c5 has a problem
|
||||
at removing the parentheses in parser_parse_responseline.
|
||||
Difference of pointers was used with intention, don't cast
|
||||
them separately.
|
||||
|
||||
2012-03-14 Yoichi NAKAYAMA <yoichi.nakayama(at)gmail.com>
|
||||
|
||||
Fix compile error on Windows.
|
||||
|
@ -251,7 +251,7 @@ static parse_status_t scanner_get_token(
|
||||
/* possibly more valid chars */
|
||||
return PARSE_INCOMPLETE;
|
||||
/* calc token length */
|
||||
token->length = (size_t)cursor - (size_t)token->buf;
|
||||
token->length = (size_t)(cursor - token->buf);
|
||||
} else if (c == ' ' || c == '\t') {
|
||||
token->buf = cursor++;
|
||||
token_type = TT_WHITESPACE;
|
||||
@ -260,7 +260,7 @@ static parse_status_t scanner_get_token(
|
||||
if (!scanner->entire_msg_loaded && cursor == null_terminator)
|
||||
/* possibly more chars */
|
||||
return PARSE_INCOMPLETE;
|
||||
token->length = (size_t)cursor - (size_t)token->buf;
|
||||
token->length = (size_t)(cursor - token->buf);
|
||||
} else if (c == TOKCHAR_CR) {
|
||||
/* scan CRLF */
|
||||
token->buf = cursor++;
|
||||
@ -306,7 +306,7 @@ static parse_status_t scanner_get_token(
|
||||
return PARSE_FAILURE;
|
||||
}
|
||||
if (got_end_quote)
|
||||
token->length = (size_t)cursor - (size_t)token->buf;
|
||||
token->length = (size_t)(cursor - token->buf);
|
||||
else { /* incomplete */
|
||||
|
||||
assert(cursor == null_terminator);
|
||||
@ -1416,7 +1416,7 @@ parse_status_t parser_parse_responseline(INOUT http_parser_t *parser)
|
||||
while (*p == ' ' || *p == '\t')
|
||||
p++;
|
||||
/* now, p is at start of status msg */
|
||||
n = line.length - (size_t)p - (size_t)line.buf;
|
||||
n = line.length - (size_t)(p - line.buf);
|
||||
if (membuffer_assign(&hmsg->status_msg, p, n) != 0) {
|
||||
/* out of mem */
|
||||
parser->http_error_code = HTTP_INTERNAL_SERVER_ERROR;
|
||||
|
Loading…
Reference in New Issue
Block a user