New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 749762 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Task



Sign in to add a comment

[cast_channel] clean up CastSocket::OnOpenCallback parameters

Project Member Reported by zhaobin@chromium.org, Jul 27 2017

Issue description

Currently 
  CastSocket::OnOpenCallBack = base::OnceCallback<void(int channel_id, ChannelError error_state)>. 

We need to call 
  CastSocket* socket = cast_socket_service_->GetSocket(channel_id); 
to get socket object in callback function, which seems unnecessary.

Make CastSocket::OnOpenCallback take CastSocket* parameter instead.

Resolve code review comments for: https://chromium-review.googlesource.com/c/575247
 

Comment 1 by sko...@chromium.org, Jul 31 2017

Status: Assigned (was: Untriaged)
Project Member

Comment 2 by bugdroid1@chromium.org, Aug 2 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3

commit 08a230488d0e7cfe95ded2a9ba54d9b40c91caa3
Author: Bin Zhao <zhaobin@chromium.org>
Date: Wed Aug 02 17:29:46 2017

[cast_channel] Make CastSocket::OnOpenCallback take CastSocket* parameter

Currently we have

  CastSocket::OnOpenCallBack 
    = base::OnceCallback<void(int channel_id, ChannelError error_state)>. 

We need to call 

  CastSocket* socket = cast_socket_service_->GetSocket(channel_id); 

to get socket object in callback function, which seems unnecessary.

Make CastSocket::OnOpenCallback take CastSocket* parameter instead. Callback is invoked 
by CastSocket object with 'this' pointer. Since CastSocket only runs on the IO thread, so
do callback functions, no post task is involved, raw pointer seems safe.

Resolve code review comments for: https://chromium-review.googlesource.com/c/575247

Bug:  749762 
Change-Id: Iaab109774fa2c67d99a7fa5afffdf2315b32fd59
Reviewed-on: https://chromium-review.googlesource.com/590588
Commit-Queue: Bin Zhao <zhaobin@chromium.org>
Reviewed-by: Derek Cheng <imcheng@chromium.org>
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#491423}
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/chrome/browser/media/router/discovery/mdns/cast_media_sink_service.cc
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/chrome/browser/media/router/discovery/mdns/cast_media_sink_service.h
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/chrome/browser/media/router/discovery/mdns/cast_media_sink_service_unittest.cc
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/components/cast_channel/cast_socket.cc
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/components/cast_channel/cast_socket.h
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/components/cast_channel/cast_socket_service_unittest.cc
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/components/cast_channel/cast_socket_unittest.cc
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/components/cast_channel/cast_test_util.h
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/extensions/browser/api/cast_channel/cast_channel_api.cc
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/extensions/browser/api/cast_channel/cast_channel_api.h
[modify] https://crrev.com/08a230488d0e7cfe95ded2a9ba54d9b40c91caa3/extensions/browser/api/cast_channel/cast_channel_apitest.cc

Status: Fixed (was: Assigned)

Sign in to add a comment