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

Issue 9724007: WebSocket Pepper API: fix data corruption at ReceiveMessage in NaCl (Closed)

Created:
8 years, 9 months ago by Takashi Toyoshima
Modified:
8 years, 9 months ago
CC:
chromium-reviews, brettw
Base URL:
http://git.chromium.org/chromium/src.git@master
Visibility:
Public.

Description

WebSocket Pepper API: fix data corruption at ReceiveMessage in NaCl PpbWebSocketRpcServer::PPB_WebSocket_ReceiveMessage sometime gets unexpected synchronous PP_OK result on PPBWebSocketInterface calling. Receiving data is passed only in completion callbacks. Then, it causes data corruption. This CL fix this issue and in order to reproduce this synchronous PP_OK situation, add one stress test, StressedSendReceive. This CL also fix CcInterface test flakiness on Mac. BUG=111636 TEST=browser_tests --test_filter='PPAPI*Test.WebSocket_CcInterfaces'; browser_tests --test_filter='PPAPI*Test.WebSocket_StressedSendReceive' Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=128890

Patch Set 1 #

Patch Set 2 : Using RunCompletionCallback #

Patch Set 3 : create non-optional callback #

Patch Set 4 : remove flaky prefix #

Total comments: 1

Patch Set 5 : reset optional flag #

Total comments: 4

Patch Set 6 : reflects review comments #

Patch Set 7 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+60 lines, -10 lines) Patch
M chrome/test/ui/ppapi_uitest.cc View 1 2 3 4 5 6 3 chunks +4 lines, -9 lines 0 comments Download
M ppapi/native_client/src/shared/ppapi_proxy/browser_ppb_websocket_rpc_server.cc View 1 2 3 4 2 chunks +6 lines, -1 line 0 comments Download
M ppapi/tests/test_websocket.h View 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/tests/test_websocket.cc View 1 2 3 4 5 2 chunks +49 lines, -0 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
Takashi Toyoshima
Hi David, could you review this CL? At first, I think I'll use PP_RunCompletionCallback in ...
8 years, 9 months ago (2012-03-20 23:27:58 UTC) #1
dmichael (off chromium)
http://codereview.chromium.org/9724007/diff/8001/ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc File ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc (right): http://codereview.chromium.org/9724007/diff/8001/ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc#newcode143 ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc:143: RunRemoteCallback, remote_callback.release()); This is going to affect URLLoader::ReadResponseBody, which ...
8 years, 9 months ago (2012-03-21 19:16:46 UTC) #2
dmichael (off chromium)
http://codereview.chromium.org/9724007/diff/8001/ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc File ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc (right): http://codereview.chromium.org/9724007/diff/8001/ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc#newcode143 ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc:143: RunRemoteCallback, remote_callback.release()); This is going to affect URLLoader::ReadResponseBody, which ...
8 years, 9 months ago (2012-03-21 19:16:47 UTC) #3
Takashi Toyoshima
Thanks. Sorry, I didn't notice URLLoader case. That's a nice example I must follow. So ...
8 years, 9 months ago (2012-03-21 19:57:33 UTC) #4
Takashi Toyoshima
I uploaded CL of plan (b) as Patch Set 5.
8 years, 9 months ago (2012-03-21 21:05:07 UTC) #5
dmichael (off chromium)
lgtm http://codereview.chromium.org/9724007/diff/16001/ppapi/tests/test_websocket.cc File ppapi/tests/test_websocket.cc (right): http://codereview.chromium.org/9724007/diff/16001/ppapi/tests/test_websocket.cc#newcode656 ppapi/tests/test_websocket.cc:656: // Send amounts of messages. Did you mean ...
8 years, 9 months ago (2012-03-23 17:38:14 UTC) #6
Takashi Toyoshima
Thanks! http://codereview.chromium.org/9724007/diff/16001/ppapi/tests/test_websocket.cc File ppapi/tests/test_websocket.cc (right): http://codereview.chromium.org/9724007/diff/16001/ppapi/tests/test_websocket.cc#newcode656 ppapi/tests/test_websocket.cc:656: // Send amounts of messages. On 2012/03/23 17:38:14, ...
8 years, 9 months ago (2012-03-26 08:41:51 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/toyoshim@chromium.org/9724007/25005
8 years, 9 months ago (2012-03-26 08:42:22 UTC) #8
commit-bot: I haz the power
8 years, 9 months ago (2012-03-26 11:13:31 UTC) #9
Change committed as 128890

Powered by Google App Engine
This is Rietveld 408576698