Title: [149709] trunk/Source/WebCore
- Revision
- 149709
- Author
- [email protected]
- Date
- 2013-05-07 19:41:08 -0700 (Tue, 07 May 2013)
Log Message
Use OwnPtr instead of deleteAllValues for requests in PluginView
https://bugs.webkit.org/show_bug.cgi?id=115731
Reviewed by Sam Weinig.
* plugins/PluginView.cpp:
(WebCore::PluginView::~PluginView): Removed the call to deleteAllValues.
(WebCore::PluginView::requestTimerFired): Use release to remove an OwnPtr
from m_requests rather than an explicit delete. Also use !isEmpty instead
of size > 0.
(WebCore::PluginView::scheduleRequest): Changed argument type to PassOwnPtr.
(WebCore::PluginView::load): Use adoptPtr to call scheduleRequest.
* plugins/PluginView.h: Changed argument type of scheduleRequest to
PassOwnPtr, and m_requests to a Vector<OwnPtr>.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (149708 => 149709)
--- trunk/Source/WebCore/ChangeLog 2013-05-08 02:03:29 UTC (rev 149708)
+++ trunk/Source/WebCore/ChangeLog 2013-05-08 02:41:08 UTC (rev 149709)
@@ -1,3 +1,21 @@
+2013-05-07 Darin Adler <[email protected]>
+
+ Use OwnPtr instead of deleteAllValues for requests in PluginView
+ https://bugs.webkit.org/show_bug.cgi?id=115731
+
+ Reviewed by Sam Weinig.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::~PluginView): Removed the call to deleteAllValues.
+ (WebCore::PluginView::requestTimerFired): Use release to remove an OwnPtr
+ from m_requests rather than an explicit delete. Also use !isEmpty instead
+ of size > 0.
+ (WebCore::PluginView::scheduleRequest): Changed argument type to PassOwnPtr.
+ (WebCore::PluginView::load): Use adoptPtr to call scheduleRequest.
+
+ * plugins/PluginView.h: Changed argument type of scheduleRequest to
+ PassOwnPtr, and m_requests to a Vector<OwnPtr>.
+
2013-05-07 Antti Koivisto <[email protected]>
Remove SelectRuleFeatureSet
Modified: trunk/Source/WebCore/plugins/PluginView.cpp (149708 => 149709)
--- trunk/Source/WebCore/plugins/PluginView.cpp 2013-05-08 02:03:29 UTC (rev 149708)
+++ trunk/Source/WebCore/plugins/PluginView.cpp 2013-05-08 02:41:08 UTC (rev 149709)
@@ -303,8 +303,6 @@
stop();
- deleteAllValues(m_requests);
-
freeStringArray(m_paramNames, m_paramCount);
freeStringArray(m_paramValues, m_paramCount);
@@ -486,22 +484,21 @@
void PluginView::requestTimerFired(Timer<PluginView>* timer)
{
ASSERT_UNUSED(timer, timer == &m_requestTimer);
- ASSERT(m_requests.size() > 0);
+ ASSERT(!m_requests.isEmpty());
ASSERT(!m_isJavaScriptPaused);
- PluginRequest* request = m_requests[0];
+ OwnPtr<PluginRequest> request = m_requests[0].release();
m_requests.remove(0);
// Schedule a new request before calling performRequest since the call to
// performRequest can cause the plugin view to be deleted.
- if (m_requests.size() > 0)
+ if (!m_requests.isEmpty())
m_requestTimer.startOneShot(0);
- performRequest(request);
- delete request;
+ performRequest(request.get());
}
-void PluginView::scheduleRequest(PluginRequest* request)
+void PluginView::scheduleRequest(PassOwnPtr<PluginRequest> request)
{
m_requests.append(request);
@@ -537,8 +534,7 @@
} else if (!m_parentFrame->document()->securityOrigin()->canDisplay(url))
return NPERR_GENERIC_ERROR;
- PluginRequest* request = new PluginRequest(frameLoadRequest, sendNotification, notifyData, arePopupsAllowed());
- scheduleRequest(request);
+ scheduleRequest(adoptPtr(new PluginRequest(frameLoadRequest, sendNotification, notifyData, arePopupsAllowed())));
return NPERR_NO_ERROR;
}
Modified: trunk/Source/WebCore/plugins/PluginView.h (149708 => 149709)
--- trunk/Source/WebCore/plugins/PluginView.h 2013-05-08 02:03:29 UTC (rev 149708)
+++ trunk/Source/WebCore/plugins/PluginView.h 2013-05-08 02:41:08 UTC (rev 149709)
@@ -308,7 +308,7 @@
Vector<IntRect> m_invalidRects;
void performRequest(PluginRequest*);
- void scheduleRequest(PluginRequest*);
+ void scheduleRequest(PassOwnPtr<PluginRequest>);
void requestTimerFired(Timer<PluginView>*);
void invalidateTimerFired(Timer<PluginView>*);
Timer<PluginView> m_requestTimer;
@@ -369,7 +369,7 @@
Vector<bool, 4> m_popupStateStack;
HashSet<RefPtr<PluginStream> > m_streams;
- Vector<PluginRequest*> m_requests;
+ Vector<OwnPtr<PluginRequest> > m_requests;
bool m_isWindowed;
bool m_isTransparent;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes