My favorites | Sign in
Project Home Downloads Wiki Issues Code Search
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 87310: Add Pepper bindings for WebSockets
19 people starred this issue and may be notified of changes. Back to list
 
Project Member Reported by darin@chromium.org, Jun 23, 2011
Add Pepper bindings for WebSockets
Jun 23, 2011
#1 erik...@chromium.org
(No comment was entered for this change.)
Cc: cstefan...@google.com
Aug 15, 2011
#2 erik...@chromium.org
I believe Yuzo has already started on this.
Status: Assigned
Owner: yuzo@chromium.org
Aug 26, 2011
#3 cstefan...@google.com
This work should include proxying the interface in the IPC proxy and the NaCl proxy.
Aug 26, 2011
#4 cstefan...@google.com
 Issue nativeclient:1310  has been merged into this issue.
Sep 4, 2011
#5 yuzo@chromium.org
(No comment was entered for this change.)
Status: Started
Sep 7, 2011
#6 yuzo@chromium.org
Uploaded C API for review.
http://codereview.chromium.org/7837022

Cc: tyoshino@chromium.org yutak@chromium.org toyoshim@chromium.org
Oct 24, 2011
#7 lafo...@google.com
(No comment was entered for this change.)
Labels: -Mstone-16 MovedFrom-16 Mstone-17
Oct 25, 2011
#8 toyoshim@chromium.org
(No comment was entered for this change.)
Owner: toyoshim@chromium.org
Cc: -toyoshim@chromium.org yuzo@chromium.org
Nov 1, 2011
#9 cstefan...@google.com
(No comment was entered for this change.)
Blocking: 97291
Nov 1, 2011
#10 cstefan...@google.com
Correcting priority: this is a must-have feature for M17.
Labels: -Type-Bug -Pri-2 Type-Feature Pri-1 Feature-NaCl
Nov 10, 2011
#11 toyoshim@chromium.org
(No comment was entered for this change.)
Blocking: 103719
Nov 13, 2011
#13 toyoshim@chromium.org
(No comment was entered for this change.)
Blockedon: 103719
Nov 13, 2011
#14 toyoshim@chromium.org
(No comment was entered for this change.)
Blocking: -103719
Nov 13, 2011
#15 toyoshim@chromium.org
(No comment was entered for this change.)
Blockedon: 103435
Nov 15, 2011
#16 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=110260

------------------------------------------------------------------------
r110260 | toyoshim@chromium.org | Tue Nov 15 21:25:01 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.h?r1=110260&r2=110259&pathrev=110260
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/dev/ppb_websocket_dev.idl?r1=110260&r2=110259&pathrev=110260
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/dev/ppb_websocket_dev.h?r1=110260&r2=110259&pathrev=110260

WebSocket Pepper API documents minor revision

BUG=87310
TEST=none


Review URL: http://codereview.chromium.org/8572009
------------------------------------------------------------------------
Nov 17, 2011
#17 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=110664

------------------------------------------------------------------------
r110664 | toyoshim@chromium.org | Thu Nov 17 21:51:54 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/interfaces_ppb_public_dev.h?r1=110664&r2=110663&pathrev=110664
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_thunk.cc?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/resource_creation_impl.cc?r1=110664&r2=110663&pathrev=110664
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_api.h?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_shared.gypi?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/resource_creation_impl.h?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_tests.gypi?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/resource.h?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/webkit_glue.gypi?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/resource_creation_api.h?r1=110664&r2=110663&pathrev=110664
 A http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=110664&r2=110663&pathrev=110664
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/resource_creation_proxy.h?r1=110664&r2=110663&pathrev=110664
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/resource_creation_proxy.cc?r1=110664&r2=110663&pathrev=110664
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=110664&r2=110663&pathrev=110664
 A http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=110664&r2=110663&pathrev=110664

- Implement internal API and thunk
- Implement base frame for in process API
- Add basic unit tests for in process API

BUG=87310
TEST=ui_tests --gtest_filter="PPAPITest.WebSocket*"

Review URL: http://codereview.chromium.org/8571002
------------------------------------------------------------------------
Nov 22, 2011
#18 toyoshim@chromium.org
(No comment was entered for this change.)
Blockedon: 91058 105104
Nov 22, 2011
#19 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=111293

------------------------------------------------------------------------
r111293 | toyoshim@chromium.org | Tue Nov 22 18:32:51 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=111293&r2=111292&pathrev=111293

Add RunTestWithWebSocketServer for subsequent Pepper WebSocket API tests.

BUG=87310
TEST=n/a


Review URL: http://codereview.chromium.org/8642001
------------------------------------------------------------------------
Nov 25, 2011
#20 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=111596

------------------------------------------------------------------------
r111596 | toyoshim@chromium.org | Fri Nov 25 06:50:58 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=111596&r2=111595&pathrev=111596
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=111596&r2=111595&pathrev=111596
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=111596&r2=111595&pathrev=111596
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=111596&r2=111595&pathrev=111596
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=111596&r2=111595&pathrev=111596

WebSocket Pepper API: in process API implementation

This change enable in process Websocket Pepper API.
For now, some unit tests are disabled because they need external a
WebSocket server.
These disabled tests run manually with external pywebsocket and
--gtest_also_run_disabled_tests flag as follows.
These tests will enabled in a few days.

TBR=dmichael@chromium.org
BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket*'

Review URL: http://codereview.chromium.org/8558017
------------------------------------------------------------------------
Nov 25, 2011
#21 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=111628

------------------------------------------------------------------------
r111628 | toyoshim@chromium.org | Fri Nov 25 19:45:30 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=111628&r2=111627&pathrev=111628
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=111628&r2=111627&pathrev=111628
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=111628&r2=111627&pathrev=111628
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=111628&r2=111627&pathrev=111628
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=111628&r2=111627&pathrev=111628

WebSocket Pepper API: in process API implementation

This change enable in process Websocket Pepper API.
For now, some unit tests are disabled because they need external a
WebSocket server.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket*'

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=111596

Review URL: http://codereview.chromium.org/8558017
------------------------------------------------------------------------
Nov 29, 2011
#22 toyoshim@chromium.org
(No comment was entered for this change.)
Blockedon: 105708
Nov 30, 2011
#23 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112419

------------------------------------------------------------------------
r112419 | toyoshim@chromium.org | Wed Nov 30 22:55:37 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=112419&r2=112418&pathrev=112419
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=112419&r2=112418&pathrev=112419
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=112419&r2=112418&pathrev=112419

WebSocket Pepper API: GetBufferedAmount() implementation

BUG=87310
TEST=n/a because of waiting for landing WebKit side API change


Review URL: http://codereview.chromium.org/8748002
------------------------------------------------------------------------
Dec 1, 2011
#25 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112637

------------------------------------------------------------------------
r112637 | toyoshim@chromium.org | Thu Dec 01 20:31:11 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=112637&r2=112636&pathrev=112637
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=112637&r2=112636&pathrev=112637

Enable port validation because net::IsPortAllowedByDefault() was exported now

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_InvalidConnect'; git try -b win_shared

Review URL: http://codereview.chromium.org/8764022
------------------------------------------------------------------------
Dec 2, 2011
#26 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=112820

------------------------------------------------------------------------
r112820 | toyoshim@chromium.org | Fri Dec 02 15:57:31 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_thunk.cc?r1=112820&r2=112819&pathrev=112820
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=112820&r2=112819&pathrev=112820
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=112820&r2=112819&pathrev=112820
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=112820&r2=112819&pathrev=112820

WebSocket Pepper API: error handling improvement

 - didReceiveMessageError() handling
 - didStartClosingHandshake() handling
 - didReceive* state_ checking
 - MayForceCallback handling

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket*'

Review URL: http://codereview.chromium.org/8772001
------------------------------------------------------------------------
Dec 2, 2011
#27 toyoshim@chromium.org
land all non-proxy text communication features.
Dec 6, 2011
#28 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113227

------------------------------------------------------------------------
r113227 | toyoshim@chromium.org | Tue Dec 06 10:06:34 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=113227&r2=113226&pathrev=113227
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=113227&r2=113226&pathrev=113227
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=113227&r2=113226&pathrev=113227

Pepper WebSocket API: Add unit test to access uninitialized properties

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_UninitializedPropertiesAccess'


Review URL: http://codereview.chromium.org/8816005
------------------------------------------------------------------------
Dec 6, 2011
#29 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113239

------------------------------------------------------------------------
r113239 | toyoshim@chromium.org | Tue Dec 06 10:33:11 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=113239&r2=113238&pathrev=113239
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=113239&r2=113238&pathrev=113239
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=113239&r2=113238&pathrev=113239
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=113239&r2=113238&pathrev=113239

Pepper WebSocket API: Add unit test to call Close()
  - Add unit tests to validate Close() operation in various situations
  - Bug fix to invoke ongoing receive completion callback on Close()

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_*Close'

Review URL: http://codereview.chromium.org/8821008
------------------------------------------------------------------------
Dec 8, 2011
#30 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113615

------------------------------------------------------------------------
r113615 | toyoshim@chromium.org | Thu Dec 08 09:32:25 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_flash.cc?r1=113615&r2=113614&pathrev=113615
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_utils.h?r1=113615&r2=113614&pathrev=113615
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_transport.cc?r1=113615&r2=113614&pathrev=113615
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/pp_macros.idl?r1=113615&r2=113614&pathrev=113615
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/pp_macros.h?r1=113615&r2=113614&pathrev=113615

Move the PP_ALLOW_THIS_IN_INITIALIZER_LIST macro from test_utils.h to
pp_macros.idl.

Now, PP_ALLOW_THIS_IN_INITIALIZER_LIST macro is provided for not only tests
but also C++ api implementation in NaCl.

BUG=87310
TEST=ui_tests


Review URL: http://codereview.chromium.org/8885012
------------------------------------------------------------------------
Dec 8, 2011
#31 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=113760

------------------------------------------------------------------------
r113760 | toyoshim@chromium.org | Thu Dec 08 20:26:28 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=113760&r2=113759&pathrev=113760
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=113760&r2=113759&pathrev=113760
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=113760&r2=113759&pathrev=113760
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=113760&r2=113759&pathrev=113760

WebSocket Pepper API: validate redundant protocols in Connect()

Given protocols argument is not allowed to have any duplicated protocol
name in Connect().

This CL contains constant number replacement in test_websocket.cc like
s/0/0U/g, and detailed comments on protocols argument check.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_Protocols'

Review URL: http://codereview.chromium.org/8839003
------------------------------------------------------------------------
Dec 13, 2011
#32 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114384

------------------------------------------------------------------------
r114384 | toyoshim@chromium.org | Tue Dec 13 22:32:31 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/var.h?r1=114384&r2=114383&pathrev=114384
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/var_tracker.cc?r1=114384&r2=114383&pathrev=114384

Var keeps invalid var_id if VarTracker release it and there is
another reference.

When VarTracker remove PP_Var from VarMap, it release its Var object
if needed, but never reset var_id stored in Var object. Then, if Var's
reference count is not 1, Var continue to exist with invalid var_id until
the last reference is released.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_*'

Review URL: http://codereview.chromium.org/8872065
------------------------------------------------------------------------
Dec 13, 2011
#33 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114389

------------------------------------------------------------------------
r114389 | toyoshim@chromium.org | Tue Dec 13 23:22:10 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=114389&r2=114388&pathrev=114389
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=114389&r2=114388&pathrev=114389
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_case.h?r1=114389&r2=114388&pathrev=114389

WebSocket Pepper API: Add live object check to WebSocket PPAPI tests

- Add RUN_TEST_WITH_REFERENCE_CHECK macro which run a test then check leaked
 pepper objects.
- Use that macro to run all WebSocket related PPAPI unit tests
- Fix some object leak in tests found by the macro

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_*'

Review URL: http://codereview.chromium.org/8934003
------------------------------------------------------------------------
Dec 14, 2011
#34 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114398

------------------------------------------------------------------------
r114398 | finnur@chromium.org | Wed Dec 14 02:08:32 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/var.h?r1=114398&r2=114397&pathrev=114398
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/var_tracker.cc?r1=114398&r2=114397&pathrev=114398

Reverting half the checkins that are suspected of breaking the world.

Revert 114384 - Var keeps invalid var_id if VarTracker release it and there is
another reference.

When VarTracker remove PP_Var from VarMap, it release its Var object
if needed, but never reset var_id stored in Var object. Then, if Var's
reference count is not 1, Var continue to exist with invalid var_id until
the last reference is released.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_*'

Review URL: http://codereview.chromium.org/8872065

TBR=toyoshim@chromium.org
Review URL: http://codereview.chromium.org/8933025
------------------------------------------------------------------------
Dec 14, 2011
#35 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114400

------------------------------------------------------------------------
r114400 | finnur@chromium.org | Wed Dec 14 02:19:55 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=114400&r2=114399&pathrev=114400
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=114400&r2=114399&pathrev=114400
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_case.h?r1=114400&r2=114399&pathrev=114400

Reverting because I reverted the CL this depends on...

Revert 114389 - WebSocket Pepper API: Add live object check to WebSocket PPAPI tests

- Add RUN_TEST_WITH_REFERENCE_CHECK macro which run a test then check leaked
 pepper objects.
- Use that macro to run all WebSocket related PPAPI unit tests
- Fix some object leak in tests found by the macro

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_*'

Review URL: http://codereview.chromium.org/8934003

TBR=toyoshim@chromium.org
Review URL: http://codereview.chromium.org/8931026
------------------------------------------------------------------------
Dec 14, 2011
#36 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114594

------------------------------------------------------------------------
r114594 | toyoshim@chromium.org | Wed Dec 14 21:04:06 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/var.h?r1=114594&r2=114593&pathrev=114594
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/shared_impl/var_tracker.cc?r1=114594&r2=114593&pathrev=114594

Reland; Pepper: Var keeps invalid var_id if VarTracker release it and there is another reference

When VarTracker remove PP_Var from VarMap, it release its Var object
if needed, but never reset var_id stored in Var object. Then, if Var's
reference count is not 1, Var continue to exist with invalid var_id until
the last reference is released.

BUG=87310
TEST=ui_tests, browser_tests, nacl_integration

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=114384

Review URL: http://codereview.chromium.org/8872065
------------------------------------------------------------------------
Dec 14, 2011
#37 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114604

------------------------------------------------------------------------
r114604 | toyoshim@chromium.org | Wed Dec 14 22:43:11 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=114604&r2=114603&pathrev=114604
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=114604&r2=114603&pathrev=114604
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_case.h?r1=114604&r2=114603&pathrev=114604

Reland; WebSocket Pepper API: Add live object check to WebSocket PPAPI tests

- Add RUN_TEST_WITH_REFERENCE_CHECK macro which run a test then check leaked
 pepper objects.
- Use that macro to run all WebSocket related PPAPI unit tests
- Fix some object leak in tests found by the macro

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_*'

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=114389

Review URL: http://codereview.chromium.org/8934003
------------------------------------------------------------------------
Dec 15, 2011
#38 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=114779

------------------------------------------------------------------------
r114779 | toyoshim@chromium.org | Thu Dec 15 23:28:21 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_sources.gypi?r1=114779&r2=114778&pathrev=114779
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.cc?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.h?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/dev/ppb_websocket_dev.idl?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/dev/ppb_websocket_dev.h?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/completion_callback.h?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=114779&r2=114778&pathrev=114779
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=114779&r2=114778&pathrev=114779

WebSocket Pepper API: C++ bindings implementation.

This change contains simple straightforward C++ interfaces.
JS like bindings will be implemented as a helper class in another change.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_CcInterfaces'


Review URL: http://codereview.chromium.org/8821010
------------------------------------------------------------------------
Dec 19, 2011
#39 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=115093

------------------------------------------------------------------------
r115093 | toyoshim@chromium.org | Mon Dec 19 23:19:28 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_sources.gypi?r1=115093&r2=115092&pathrev=115093
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/helper?r1=115093&r2=115092&pathrev=115093
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=115093&r2=115092&pathrev=115093
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/helper/dev?r1=115093&r2=115092&pathrev=115093
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/helper/dev/websocket_api_dev.cc?r1=115093&r2=115092&pathrev=115093
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=115093&r2=115092&pathrev=115093
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=115093&r2=115092&pathrev=115093
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/helper/dev/websocket_api_dev.h?r1=115093&r2=115092&pathrev=115093

WebSocket Pepper API: C++ helper class implementation.

This class privide JS binding like API to Pepper C++ developers.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.Websocket_Helper*'

Review URL: http://codereview.chromium.org/8956008
------------------------------------------------------------------------
Dec 20, 2011
#40 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=115099

------------------------------------------------------------------------
r115099 | toyoshim@chromium.org | Tue Dec 20 00:57:36 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_sources.gypi?r1=115099&r2=115098&pathrev=115099
 D http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/helper?r1=115099&r2=115098&pathrev=115099
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=115099&r2=115098&pathrev=115099
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=115099&r2=115098&pathrev=115099
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=115099&r2=115098&pathrev=115099

Revert 115093 because of memory test failures - WebSocket Pepper API: C++ helper class implementation.

This class privide JS binding like API to Pepper C++ developers.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.Websocket_Helper*'

Review URL: http://codereview.chromium.org/8956008

TBR=toyoshim@chromium.org
Review URL: http://codereview.chromium.org/8956021
------------------------------------------------------------------------
Dec 27, 2011
#41 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=115871

------------------------------------------------------------------------
r115871 | toyoshim@chromium.org | Tue Dec 27 21:51:32 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=115871&r2=115870&pathrev=115871
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=115871&r2=115870&pathrev=115871
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=115871&r2=115870&pathrev=115871
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=115871&r2=115870&pathrev=115871

WebSocket Pepper API: ArrayBuffer support

This CL supports basic binary communication.
For now, communication between Chrome and WebKit uses WebData structure.
It must use WebArrayBuffer directly after WebKit API revision.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPITest.WebSocket_BinarySendReceive'


Review URL: http://codereview.chromium.org/8774042
------------------------------------------------------------------------
Jan 11, 2012
#42 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=117391

------------------------------------------------------------------------
r117391 | toyoshim@chromium.org | Wed Jan 11 23:03:50 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_thunk.cc?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/interfaces_ppb_public_dev.h?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_api.h?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/dev/ppb_websocket_dev.idl?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/dev/ppb_websocket_dev.h?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=117391&r2=117390&pathrev=117391
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=117391&r2=117390&pathrev=117391

WebSocket Pepper API: add interfaces to handle binaryType attribute

Add interfaces to handle binaryType attribute for various binary types supporting
in API version 0.9. Keeps the old interface as 0.1 for compatibility, and add
simple unit test just to instansiate the old interface.
Adding new interfaces are based on the WebSocket API.

BUG=87310
TEST=ui_test --gtest_filter='PPAPITest.WebSocket_*'

Review URL: http://codereview.chromium.org/8989046
------------------------------------------------------------------------
Jan 12, 2012
#43 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=117415

------------------------------------------------------------------------
r117415 | toyoshim@chromium.org | Thu Jan 12 02:53:58 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=117415&r2=117414&pathrev=117415
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=117415&r2=117414&pathrev=117415
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=117415&r2=117414&pathrev=117415

WebSocket Pepper API: add a unit test for the bufferedAmount property

Add a unit test for the bufferedAmount property to verify its behaviors around
connection close.

BUG=87310
TEST=ui_test --gtest_filter='PPAPITest.WebSocket_BufferedAmount'

Review URL: http://codereview.chromium.org/8989047
------------------------------------------------------------------------
Jan 17, 2012
#44 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=118050

------------------------------------------------------------------------
r118050 | toyoshim@chromium.org | Tue Jan 17 20:25:23 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_thunk.cc?r1=118050&r2=118049&pathrev=118050

WebSocket Pepper API: fix wrong return code on thunk

Some thunk functions returned PP_ERROR_BADRESOURCE for EnterResource failure
though returning value is not int32_t error code.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPI*.WebSocket_*'


Review URL: http://codereview.chromium.org/9097008
------------------------------------------------------------------------
Jan 18, 2012
#45 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=118258

------------------------------------------------------------------------
r118258 | toyoshim@chromium.org | Wed Jan 18 22:22:51 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.cc?r1=118258&r2=118257&pathrev=118258
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.h?r1=118258&r2=118257&pathrev=118258
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/dev/ppb_websocket_dev.idl?r1=118258&r2=118257&pathrev=118258
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/dev/ppb_websocket_dev.h?r1=118258&r2=118257&pathrev=118258
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=118258&r2=118257&pathrev=118258
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=118258&r2=118257&pathrev=118258
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=118258&r2=118257&pathrev=118258

WebSocket Pepper API: WebArrayBuffer support

- support SetBinaryType()
- support WebArrayBuffer and stop supporting WebData
- use Var instead of PP_Var to hold received messages
- Add C++ interfaces to handle binary types

BUG=87310
TEST=ui_test --gtest_filter='PPAPITest.WebSocket_*'


Review URL: http://codereview.chromium.org/9026007
------------------------------------------------------------------------
Jan 19, 2012
#46 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=118268

------------------------------------------------------------------------
r118268 | toyoshim@chromium.org | Thu Jan 19 00:44:47 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/untrusted/srpcgen/ppb_rpc.h?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/build.scons?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=118268&r2=118267&pathrev=118268
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_ppb_websocket_rpc_server.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_globals.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/run_srpcgen.py?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_callback.h?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_rpc_client.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_sources.gypi?r1=118268&r2=118267&pathrev=118268
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb_websocket.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/nacl.scons?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_callback.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_globals.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_globals.h?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_callback.h?r1=118268&r2=118267&pathrev=118268
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_websocket.srpc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_rpc_server.cc?r1=118268&r2=118267&pathrev=118268
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb_websocket.h?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppapi_proxy_untrusted.gyp?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/trusted/srpcgen/ppb_rpc.h?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppapi_proxy.gyp?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_callback.cc?r1=118268&r2=118267&pathrev=118268
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_globals.h?r1=118268&r2=118267&pathrev=118268

WebSocket Pepper API: SRPC proxy implementation

Implement PPB_WebSocket _Dev SRPC proxy
- support PP_Var write back in plugin/browser callback bridge
- resource leak fix in browser_callback

Enable all WebSocket related ppapi tests in NaCl
- support TEST_PPAPI_NACL_VIA_HTTP_WITH_WS macro in ppapi_uitest
- fix a test which expects synchronous completion

BUG=87310
TEST=ui_tests --gtest_filter='PPAPINaClTest.WebSocket_*'

Review URL: https://chromiumcodereview.appspot.com/9227008
------------------------------------------------------------------------
Jan 19, 2012
#47 toyoshim@chromium.org
Yep, now WebSocket is available in NaCl.

Here is TODO to close this issue.
 - Remove WebSocket binding from dev
 - Helper class implementation
 - RPC related optimization
 - Out of process proxy implementation

Labels: -Mstone-17 MovedFrom-17 Mstone-18
Jan 23, 2012
#48 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=118787

------------------------------------------------------------------------
r118787 | chrome-bot@google.com | Mon Jan 23 18:45:02 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=118787&r2=118786&pathrev=118787
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=118787&r2=118786&pathrev=118787

WebSocket Pepper API: SetBinaryType() returned unexpected PP_FALSE

Usually, the websocket_ doesn't have an object when SetBinaryType() is called.

BUG=87310
TEST=ui_tests --gtest_filter='*WebSocket_CcInterfaces'


Review URL: http://codereview.chromium.org/9193013
------------------------------------------------------------------------
Jan 26, 2012
#49 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=119382

------------------------------------------------------------------------
r119382 | toyoshim@chromium.org | Thu Jan 26 22:07:25 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/interfaces_ppb_public_dev.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_thunk.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/untrusted/srpcgen/ppb_rpc.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_api.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_ppb_websocket_rpc_server.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/dev/ppb_websocket_dev.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/dev/ppb_websocket_dev.idl?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_rpc_client.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb_websocket.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_websocket.srpc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_rpc_server.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/trusted/srpcgen/ppb_rpc.h?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=119382&r2=119381&pathrev=119382
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=119382&r2=119381&pathrev=119382

WebSocket Pepper API: Remove binary type handling interfaces

In an API discussion, we decide to remove binary type handling interfaces
from the first release. This change just fix the interface. The change to
make the interface out of dev will follow this change.

BUG=87310
TEST=ui_test --gtest_filter='*WebSocket*'

Review URL: https://chromiumcodereview.appspot.com/9296001
------------------------------------------------------------------------
Jan 27, 2012
#50 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=119425

------------------------------------------------------------------------
r119425 | toyoshim@chromium.org | Fri Jan 27 01:42:41 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/interfaces_ppb_public_dev.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_thunk.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_api.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_ppb_websocket_rpc_server.cc?r1=119425&r2=119424&pathrev=119425
 D http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/dev/websocket_dev.h?r1=119425&r2=119424&pathrev=119425
 D http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/dev/ppb_websocket_dev.h?r1=119425&r2=119424&pathrev=119425
 D http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/dev/ppb_websocket_dev.idl?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/resource_creation_api.h?r1=119425&r2=119424&pathrev=119425
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/websocket.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_globals.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=119425&r2=119424&pathrev=119425
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/c/ppb_websocket.h?r1=119425&r2=119424&pathrev=119425
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/api/ppb_websocket.idl?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_sources.gypi?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb_websocket.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_globals.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_globals.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_websocket.srpc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb_websocket.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/all_c_includes.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/all_cpp_includes.h?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=119425&r2=119424&pathrev=119425
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_globals.h?r1=119425&r2=119424&pathrev=119425
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/cpp/websocket.cc?r1=119425&r2=119424&pathrev=119425

WebSocket Pepper API: make the API out of dev

BUG=87310
TEST=ui_test


Review URL: http://codereview.chromium.org/9192009
------------------------------------------------------------------------
Feb 27, 2012
#51 cstefan...@google.com
Can we close this now?
Feb 28, 2012
#52 toyoshim@chromium.org
Out of process proxy is not implemented yet.
Could you keep this opened for a moment?
Also it's OK to close this and file another one for out of process proxy.

Anyway, it's ready for NaCl.
So I change its priority to P2 because I have another P1 for now.
Labels: -Pri-1 -Mstone-18 Pri-2 MovedFrom-18 Mstone-19
Feb 29, 2012
#53 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=124238

------------------------------------------------------------------------
r124238 | toyoshim@chromium.org | Wed Feb 29 12:22:09 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_sources.gypi?r1=124238&r2=124237&pathrev=124238
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/utility/websocket/websocket_api.cc?r1=124238&r2=124237&pathrev=124238
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=124238&r2=124237&pathrev=124238
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/utility/websocket/websocket_api.h?r1=124238&r2=124237&pathrev=124238
 A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/utility/websocket?r1=124238&r2=124237&pathrev=124238
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=124238&r2=124237&pathrev=124238
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=124238&r2=124237&pathrev=124238

WebSocket Pepper API: an utility class implementation.

This class privide JS binding like API to Pepper C++ developers.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPI*Test.Websocket_Utility*'

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=115093


Review URL: http://codereview.chromium.org/8956008
------------------------------------------------------------------------
Mar 2, 2012
#54 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=124805

------------------------------------------------------------------------
r124805 | toyoshim@chromium.org | Fri Mar 02 17:10:59 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=124805&r2=124804&pathrev=124805

WebSocket Pepper API: unit test must use close code defined by API

Current unit test use locally defined kCloseCodeNormalClosure as a close code.
Now, PPB_WebSocket provide API defined status codes. The test must use
PP_WEBSOCKETSTATUSCODE_NORMAL_CLOSURE instead of kCloseCodeNormalClosure.

BUG=87310
TEST=ui_tests --gtest_filter='PPAPI*Test.WebSocket*'


Review URL: http://codereview.chromium.org/9586015
------------------------------------------------------------------------
Mar 19, 2012
#56 toyoshim@chromium.org
Updates:

TODO
 - Fixing a bug on ReceiveMessage/NaCl (by M19)
 - Performance optimization on SRPC proxy (no milestone for now)
 - Implement out-of-process proxy (no milestone for now)
Labels: -Mstone-19 MovedFrom-19 Mstone-20
Apr 16, 2012
#57 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=132413

------------------------------------------------------------------------
r132413 | toyoshim@chromium.org | Mon Apr 16 09:48:05 PDT 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/plugin_ppb_websocket.cc?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/untrusted/srpcgen/ppb_rpc.h?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_websocket.srpc?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ui/ppapi_uitest.cc?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_rpc_server.cc?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/browser_ppb_websocket_rpc_server.cc?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/trusted/srpcgen/ppb_rpc.h?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.h?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=132413&r2=132412&pathrev=132413
 M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/src/shared/ppapi_proxy/ppb_rpc_client.cc?r1=132413&r2=132412&pathrev=132413

WebSocket Pepper API: synchronous completion support.

Allow optional remote callback, then perform synchronous completion
if receiving data is enough small for SRPC buffer. Otherwise invoke
another callback for asynchronous completion from main thread.

BUG=87310
TEST=browser_tests --gtest_filter=PPAPINaclTest.WebSocket_StressedSendReceive

Review URL: https://chromiumcodereview.appspot.com/9802027
------------------------------------------------------------------------
May 7, 2012
#58 toyoshim@chromium.org
Basically, current implementation meets expected features.

TODO items are
a) implement out of process proxy
b) support blob

a) is not needed for now. b) depends blob support by  issue 103435 .
So, I change the priority from Pri-2 to Pri-3 and remove milestone release label.
Cc: -yuzo@chromium.org
Labels: -Pri-2 -Mstone-20 Pri-3 MovedFrom-20
May 7, 2012
#59 toyoshim@chromium.org
Ah.. blob support is now targetting m23. So I set new target as m24 for b).
Labels: Mstone-24
Oct 8, 2012
#60 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=160783

------------------------------------------------------------------------
r160783 | toyoshim@chromium.org | 2012-10-09T03:43:48.490661Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/pepper_in_process_resource_creation.cc?r1=160783&r2=160782&pathrev=160783
   A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/websocket_resource_unittest.cc?r1=160783&r2=160782&pathrev=160783
   A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/websocket_resource.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_tests.gypi?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/renderer_ppapi_host_impl.cc?r1=160783&r2=160782&pathrev=160783
   D http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/renderer_ppapi_host_impl.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/host/ppapi_host.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/thunk.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/host/ppapi_host.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/resource_creation_proxy.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_proxy.gypi?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/resource_creation_proxy.h?r1=160783&r2=160782&pathrev=160783
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/pepper_websocket_host.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/resource_creation_impl.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/mock_renderer_ppapi_host.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/interfaces_ppb_public_stable.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/ppapi/ppapi_browsertest.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/mock_renderer_ppapi_host.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/interfaces_ppb_public_dev.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/ppb_websocket_api.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/pepper_in_process_resource_creation.h?r1=160783&r2=160782&pathrev=160783
   D http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/ppb_websocket_impl.cc?r1=160783&r2=160782&pathrev=160783
   A http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/websocket_resource.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/ppapi_shared.gypi?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/public/renderer/renderer_ppapi_host.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/ppapi_messages.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/content_renderer.gypi?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/proxy/plugin_dispatcher.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/tests/test_websocket.cc?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/webkit_glue.gypi?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/thunk/resource_creation_api.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/content_renderer_pepper_host_factory.cc?r1=160783&r2=160782&pathrev=160783
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/pepper/pepper_websocket_host.h?r1=160783&r2=160782&pathrev=160783
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/plugins/ppapi/resource_creation_impl.cc?r1=160783&r2=160782&pathrev=160783

Pepper WebSocket API: Implement new design Chrome IPC.

This change implements new Chrome IPC for PPB_WebSocket.
After this change, all mode including out of process
will work with new design. It doesn't depend on old SRPC design any more.

BUG=87310,116317

Review URL: https://chromiumcodereview.appspot.com/10944005
------------------------------------------------------------------------
Blockedon: -chromium:91058 -chromium:103435 -chromium:103719 -chromium:105104 -chromium:105708 chromium:91058 chromium:103435 chromium:103719 chromium:105104 chromium:105708
Blocking: -chromium:97291 chromium:97291
Oct 8, 2012
#61 toyoshim@chromium.org
Filed separated bug for Blob support.
https://code.google.com/p/chromium/issues/detail?id=154746

Now, new Chrome IPC is implemented, and ouf of process proxy mode works.
I'll close this bug because PPB_WebSocket is implemented except for Blob support.
Status: Fixed
Blockedon: -chromium:103435
Mar 10, 2013
#62 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: -Area-Internals -Feature-Plugins-Pepper -Feature-NaCl -Mstone-24 Cr-Platform-NaCl Cr-Internals Cr-Content-Plugins-Pepper M-24
Apr 5, 2013
#63 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: Cr-Blink
Apr 5, 2013
#64 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: Cr-Internals-Plugins
Apr 5, 2013
#65 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: -Cr-Content-Plugins-Pepper Cr-Internals-Plugins-Pepper
Sign in to add a comment

Powered by Google Project Hosting