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

Side by Side Diff: webkit/plugins/npapi/plugin_instance.cc

Issue 11189146: Eliminate implicit conversion from scoped_refptr<T> to T* (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « webkit/plugins/npapi/plugin_instance.h ('k') | webkit/plugins/npapi/plugin_stream_url.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "webkit/plugins/npapi/plugin_instance.h" 5 #include "webkit/plugins/npapi/plugin_instance.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "build/build_config.h" 8 #include "build/build_config.h"
9 #include "base/file_util.h" 9 #include "base/file_util.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 resource_id, url, this, notify, notify_data); 90 resource_id, url, this, notify, notify_data);
91 91
92 AddStream(stream); 92 AddStream(stream);
93 return stream; 93 return stream;
94 } 94 }
95 95
96 void PluginInstance::AddStream(PluginStream* stream) { 96 void PluginInstance::AddStream(PluginStream* stream) {
97 open_streams_.push_back(make_scoped_refptr(stream)); 97 open_streams_.push_back(make_scoped_refptr(stream));
98 } 98 }
99 99
100 void PluginInstance::RemoveStream(PluginStream* stream) { 100 void PluginInstance::RemoveStream(scoped_refptr<PluginStream> stream) {
101 if (in_close_streams_) 101 if (in_close_streams_)
102 return; 102 return;
103 103
104 std::vector<scoped_refptr<PluginStream> >::iterator stream_index; 104 std::vector<scoped_refptr<PluginStream> >::iterator stream_index;
105 for (stream_index = open_streams_.begin(); 105 for (stream_index = open_streams_.begin();
106 stream_index != open_streams_.end(); ++stream_index) { 106 stream_index != open_streams_.end(); ++stream_index) {
107 if (*stream_index == stream) { 107 if (*stream_index == stream) {
108 open_streams_.erase(stream_index); 108 open_streams_.erase(stream_index);
109 break; 109 break;
110 } 110 }
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after
540 540
541 // The lifetime of a NPStream instance depends on the PluginStream instance 541 // The lifetime of a NPStream instance depends on the PluginStream instance
542 // which owns it. When a plugin invokes NPN_RequestRead on a seekable stream, 542 // which owns it. When a plugin invokes NPN_RequestRead on a seekable stream,
543 // we don't want to create a new stream when the corresponding response is 543 // we don't want to create a new stream when the corresponding response is
544 // received. We send over a cookie which represents the PluginStream 544 // received. We send over a cookie which represents the PluginStream
545 // instance which is sent back from the renderer when the response is 545 // instance which is sent back from the renderer when the response is
546 // received. 546 // received.
547 std::vector<scoped_refptr<PluginStream> >::iterator stream_index; 547 std::vector<scoped_refptr<PluginStream> >::iterator stream_index;
548 for (stream_index = open_streams_.begin(); 548 for (stream_index = open_streams_.begin();
549 stream_index != open_streams_.end(); ++stream_index) { 549 stream_index != open_streams_.end(); ++stream_index) {
550 PluginStream* plugin_stream = *stream_index; 550 scoped_refptr<PluginStream> plugin_stream = *stream_index;
551 if (plugin_stream->stream() == stream) { 551 if (plugin_stream->stream() == stream) {
552 // A stream becomes seekable the first time NPN_RequestRead 552 // A stream becomes seekable the first time NPN_RequestRead
553 // is called on it. 553 // is called on it.
554 plugin_stream->set_seekable(true); 554 plugin_stream->set_seekable(true);
555 555
556 pending_range_requests_[++next_range_request_id_] = plugin_stream; 556 pending_range_requests_[++next_range_request_id_] = plugin_stream;
557 webplugin_->InitiateHTTPRangeRequest( 557 webplugin_->InitiateHTTPRangeRequest(
558 stream->url, range_info.c_str(), next_range_request_id_); 558 stream->url, range_info.c_str(), next_range_request_id_);
559 return; 559 return;
560 } 560 }
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
661 *notify = false; 661 *notify = false;
662 *notify_data = NULL; 662 *notify_data = NULL;
663 } 663 }
664 } 664 }
665 665
666 void PluginInstance::URLRedirectResponse(bool allow, void* notify_data) { 666 void PluginInstance::URLRedirectResponse(bool allow, void* notify_data) {
667 // The notify_data passed in allows us to identify the matching stream. 667 // The notify_data passed in allows us to identify the matching stream.
668 std::vector<scoped_refptr<PluginStream> >::iterator stream_index; 668 std::vector<scoped_refptr<PluginStream> >::iterator stream_index;
669 for (stream_index = open_streams_.begin(); 669 for (stream_index = open_streams_.begin();
670 stream_index != open_streams_.end(); ++stream_index) { 670 stream_index != open_streams_.end(); ++stream_index) {
671 PluginStream* plugin_stream = *stream_index; 671 scoped_refptr<PluginStream> plugin_stream = *stream_index;
672 if (plugin_stream->notify_data() == notify_data) { 672 if (plugin_stream->notify_data() == notify_data) {
673 WebPluginResourceClient* resource_client = 673 WebPluginResourceClient* resource_client =
674 plugin_stream->AsResourceClient(); 674 plugin_stream->AsResourceClient();
675 webplugin_->URLRedirectResponse(allow, resource_client->ResourceId()); 675 webplugin_->URLRedirectResponse(allow, resource_client->ResourceId());
676 if (allow) { 676 if (allow) {
677 plugin_stream->UpdateUrl( 677 plugin_stream->UpdateUrl(
678 plugin_stream->pending_redirect_url().c_str()); 678 plugin_stream->pending_redirect_url().c_str());
679 } 679 }
680 break; 680 break;
681 } 681 }
682 } 682 }
683 } 683 }
684 684
685 } // namespace npapi 685 } // namespace npapi
686 } // namespace webkit 686 } // namespace webkit
OLDNEW
« no previous file with comments | « webkit/plugins/npapi/plugin_instance.h ('k') | webkit/plugins/npapi/plugin_stream_url.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698