Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(94)

Issue 2889033002: Better header value parsing for Server-Timing. (Closed)

Created:
3 years, 7 months ago by cvazac-akam
Modified:
3 years, 6 months ago
Reviewers:
Yoav Weiss, Mike West
CC:
blink-reviews, chromium-reviews, e_hakkinen, kinuko+watch
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Better header value parsing for Server-Timing. The parsing code now leverages the same helper methods that we use to parse the content-type header. I also added some tests to make sure double-quotes and other delimiters are properly handled in a quoted description. BUG=702760 Review-Url: https://codereview.chromium.org/2889033002 Cr-Commit-Position: refs/heads/master@{#479443} Committed: https://chromium.googlesource.com/chromium/src/+/a8342f08488f15c766e3882ec3ce84c952a8a0de

Patch Set 1 #

Patch Set 2 : add TODOs for skipping all whitespace #

Total comments: 2

Patch Set 3 : add comment, fix Consume() #

Patch Set 4 : test escaped double-quotes #

Total comments: 3

Patch Set 5 : use HeaderFieldTokenizer instead of redundant methods #

Total comments: 8

Patch Set 6 : handle htabs in SkipSpaces, add test coverage, unused code removal #

Patch Set 7 : only convert duation token to string and then to double if it was parsed #

Total comments: 1

Patch Set 8 : init description as empty string for readability #

Total comments: 1

Patch Set 9 : remove htab parsing, added TODO #

Total comments: 1

Patch Set 10 : init duration as 0.0 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+32 lines, -59 lines) Patch
M third_party/WebKit/Source/platform/network/HTTPParsers.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/network/HTTPParsers.cpp View 1 2 3 4 5 6 7 8 9 3 chunks +22 lines, -46 lines 0 comments Download
M third_party/WebKit/Source/platform/network/HTTPParsersTest.cpp View 1 2 3 4 6 7 8 2 chunks +7 lines, -12 lines 0 comments Download
M third_party/WebKit/Source/platform/network/HeaderFieldTokenizer.cpp View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 53 (34 generated)
cvazac-akam
3 years, 7 months ago (2017-05-18 17:01:28 UTC) #3
Yoav Weiss
LGTM https://codereview.chromium.org/2889033002/diff/20001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): https://codereview.chromium.org/2889033002/diff/20001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp#newcode919 third_party/WebKit/Source/platform/network/HTTPParsers.cpp:919: // TODO: skip all whitespace, not just spaces ...
3 years, 7 months ago (2017-05-18 21:45:05 UTC) #5
Yoav Weiss
On 2017/05/18 21:45:05, Yoav Weiss wrote: > LGTM > > https://codereview.chromium.org/2889033002/diff/20001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp > File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): ...
3 years, 7 months ago (2017-05-19 16:14:57 UTC) #10
Mike West
LGTM
3 years, 7 months ago (2017-05-22 07:53:21 UTC) #12
Yoav Weiss
https://codereview.chromium.org/2889033002/diff/60001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): https://codereview.chromium.org/2889033002/diff/60001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp#newcode921 third_party/WebKit/Source/platform/network/HTTPParsers.cpp:921: // TODO: skip all whitespace, not just spaces Can ...
3 years, 7 months ago (2017-05-22 08:21:33 UTC) #15
e_hakkinen
https://codereview.chromium.org/2889033002/diff/60001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): https://codereview.chromium.org/2889033002/diff/60001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp#newcode860 third_party/WebKit/Source/platform/network/HTTPParsers.cpp:860: unsigned index = 0; Please rebase, create a HeaderFieldTokenizer ...
3 years, 7 months ago (2017-05-24 11:48:17 UTC) #19
cvazac-akam
This should be good to go. FYI the Consume* methods in HeaderFieldTokenizer are fine as-is, ...
3 years, 6 months ago (2017-06-08 03:15:30 UTC) #21
Yoav Weiss
Thanks for continuing to work on this, despite my nit-picking :) Got a few more ...
3 years, 6 months ago (2017-06-08 06:07:55 UTC) #22
Yoav Weiss
On 2017/06/08 03:15:30, cvazac-akam wrote: > This should be good to go. FYI the Consume* ...
3 years, 6 months ago (2017-06-08 06:09:14 UTC) #23
e_hakkinen
https://codereview.chromium.org/2889033002/diff/80001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): https://codereview.chromium.org/2889033002/diff/80001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp#newcode877 third_party/WebKit/Source/platform/network/HTTPParsers.cpp:877: HeaderFieldTokenizer tokenizer(headerValue); On 2017/06/08 06:07:55, Yoav Weiss wrote: > ...
3 years, 6 months ago (2017-06-08 07:35:25 UTC) #24
Yoav Weiss
https://codereview.chromium.org/2889033002/diff/80001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): https://codereview.chromium.org/2889033002/diff/80001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp#newcode877 third_party/WebKit/Source/platform/network/HTTPParsers.cpp:877: HeaderFieldTokenizer tokenizer(headerValue); On 2017/06/08 07:35:24, e_hakkinen wrote: > On ...
3 years, 6 months ago (2017-06-08 07:47:48 UTC) #25
Yoav Weiss
LGTM % nit Mike - care to take another look? A lot have changed since ...
3 years, 6 months ago (2017-06-08 20:47:46 UTC) #26
Mike West
https://codereview.chromium.org/2889033002/diff/140001/third_party/WebKit/Source/platform/network/HeaderFieldTokenizer.cpp File third_party/WebKit/Source/platform/network/HeaderFieldTokenizer.cpp (right): https://codereview.chromium.org/2889033002/diff/140001/third_party/WebKit/Source/platform/network/HeaderFieldTokenizer.cpp#newcode121 third_party/WebKit/Source/platform/network/HeaderFieldTokenizer.cpp:121: while (!IsConsumed() && (input_[index_] == ' ' || input_[index_] ...
3 years, 6 months ago (2017-06-09 08:13:44 UTC) #37
Yoav Weiss
LGTM % nit https://codereview.chromium.org/2889033002/diff/160001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp File third_party/WebKit/Source/platform/network/HTTPParsers.cpp (right): https://codereview.chromium.org/2889033002/diff/160001/third_party/WebKit/Source/platform/network/HTTPParsers.cpp#newcode883 third_party/WebKit/Source/platform/network/HTTPParsers.cpp:883: double duration = 0; Nit: An ...
3 years, 6 months ago (2017-06-13 13:46:06 UTC) #40
Mike West
LGTM
3 years, 6 months ago (2017-06-14 06:53:20 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2889033002/180001
3 years, 6 months ago (2017-06-14 15:26:57 UTC) #46
commit-bot: I haz the power
Try jobs failed on following builders: ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device-xcode-clang/builds/117185)
3 years, 6 months ago (2017-06-14 15:38:15 UTC) #48
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2889033002/180001
3 years, 6 months ago (2017-06-14 17:09:18 UTC) #50
commit-bot: I haz the power
3 years, 6 months ago (2017-06-14 18:17:24 UTC) #53
Message was sent while issue was closed.
Committed patchset #10 (id:180001) as
https://chromium.googlesource.com/chromium/src/+/a8342f08488f15c766e3882ec3ce...

Powered by Google App Engine
This is Rietveld 408576698