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

Issue 1744143002: WTF::bind: Handle movable objects in unbound arguments. (Closed)

Created:
4 years, 9 months ago by Yuta Kitamura
Modified:
4 years, 9 months ago
Reviewers:
haraken, hiroshige, tzik, Mikhail
CC:
chromium-reviews, blink-reviews, blink-reviews-wtf_chromium.org, Mikhail
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

WTF::bind: Handle movable objects in unbound arguments. This patch is the complement to an earlier patch (https://codereview.chromium.org/1708183002/), which did the same thing for bound arguments. Fix for unbound arguments is simpler than that for bound arguments. We just need to make sure the arguments are passed correctly throughout the process. Due to the current implementation where we use a virtual function to implement PartBoundFunctionImpl::operator() we need to copy- or move-construct a value there, if the argument's type is not a reference. This is extra cost, but it's probably not feasible to get rid of this overhead with the current design. More comments and tests are added accordingly. BUG=565765 R=haraken@chromium.org, hiroshige@chromium.org, tzik@chromium.org Committed: https://crrev.com/cbf29aa70a0a46e631f77e6b6256a3771a09b994 Cr-Commit-Position: refs/heads/master@{#378372}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+81 lines, -11 lines) Patch
M third_party/WebKit/Source/wtf/Functional.h View 2 chunks +22 lines, -7 lines 0 comments Download
M third_party/WebKit/Source/wtf/FunctionalTest.cpp View 4 chunks +59 lines, -4 lines 0 comments Download

Messages

Total messages: 16 (5 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1744143002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1744143002/1
4 years, 9 months ago (2016-02-29 08:10:05 UTC) #2
Yuta Kitamura
PTAL
4 years, 9 months ago (2016-02-29 08:13:12 UTC) #3
tzik
lgtm
4 years, 9 months ago (2016-02-29 08:21:00 UTC) #4
Mikhail
lgtm
4 years, 9 months ago (2016-02-29 08:46:49 UTC) #6
haraken
LGTM
4 years, 9 months ago (2016-02-29 08:50:34 UTC) #7
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-02-29 09:32:52 UTC) #9
Yuta Kitamura
Landing this now. hiroshige: Speak up if you find anything as usual.
4 years, 9 months ago (2016-03-01 02:15:33 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1744143002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1744143002/1
4 years, 9 months ago (2016-03-01 02:16:13 UTC) #12
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 9 months ago (2016-03-01 02:22:17 UTC) #13
commit-bot: I haz the power
Patchset 1 (id:??) landed as https://crrev.com/cbf29aa70a0a46e631f77e6b6256a3771a09b994 Cr-Commit-Position: refs/heads/master@{#378372}
4 years, 9 months ago (2016-03-01 02:23:32 UTC) #15
Finnur
4 years, 9 months ago (2016-03-02 11:47:28 UTC) #16
Message was sent while issue was closed.
A revert of this CL (patchset #1 id:1) has been created in
https://codereview.chromium.org/1757873002/ by finnur@chromium.org.

The reason for reverting is: Speculative revert to see if it fixes leaks in
WebKit tests on Linux that started when this CL was checked in:

https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Leak/b...

Only two other changes (besides this CL) went into that build (one being Mac
only) and this CL happens to be the only checkin to WebKit directly. Will reland
if not the culprit..

Powered by Google App Engine
This is Rietveld 408576698