Title: [115965] trunk/Source/WebCore
Revision
115965
Author
[email protected]
Date
2012-05-03 05:39:29 -0700 (Thu, 03 May 2012)

Log Message

Web Inspector: compile time ambiguity happens when I try to assign a TypeBuilder object to an out argument.
https://bugs.webkit.org/show_bug.cgi?id=85462

It happens because we have type casting operators for both types RefPtr<*Type*> and PassRefPtr<*Type*>.
I think we can drop PassRefPtr type casting operator and use a named function 'release'.

Reviewed by Yury Semikhatsky.

* inspector/CodeGeneratorInspector.py:
* inspector/ContentSearchUtils.cpp:
(WebCore::ContentSearchUtils::buildObjectForSearchMatch):
* inspector/InspectorApplicationCacheAgent.cpp:
(WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
* inspector/InspectorPageAgent.cpp:
(WebCore::buildObjectForCookie):
(WebCore::buildObjectForSearchResult):
* inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForTiming):
(WebCore::InspectorResourceAgent::buildInitiatorObject):
* inspector/ScriptCallFrame.cpp:
(WebCore::ScriptCallFrame::buildInspectorObject):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (115964 => 115965)


--- trunk/Source/WebCore/ChangeLog	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/ChangeLog	2012-05-03 12:39:29 UTC (rev 115965)
@@ -1,3 +1,27 @@
+2012-05-03  Ilya Tikhonovsky  <[email protected]>
+
+        Web Inspector: compile time ambiguity happens when I try to assign a TypeBuilder object to an out argument.
+        https://bugs.webkit.org/show_bug.cgi?id=85462
+
+        It happens because we have type casting operators for both types RefPtr<*Type*> and PassRefPtr<*Type*>.
+        I think we can drop PassRefPtr type casting operator and use a named function 'release'.
+
+        Reviewed by Yury Semikhatsky.
+
+        * inspector/CodeGeneratorInspector.py:
+        * inspector/ContentSearchUtils.cpp:
+        (WebCore::ContentSearchUtils::buildObjectForSearchMatch):
+        * inspector/InspectorApplicationCacheAgent.cpp:
+        (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
+        * inspector/InspectorPageAgent.cpp:
+        (WebCore::buildObjectForCookie):
+        (WebCore::buildObjectForSearchResult):
+        * inspector/InspectorResourceAgent.cpp:
+        (WebCore::buildObjectForTiming):
+        (WebCore::InspectorResourceAgent::buildInitiatorObject):
+        * inspector/ScriptCallFrame.cpp:
+        (WebCore::ScriptCallFrame::buildInspectorObject):
+
 2012-05-03  Yury Semikhatsky  <[email protected]>
 
         Web Inspector: crash in InspectorResourceAgent::didReceiveWebSocketFrame

Modified: trunk/Source/WebCore/inspector/CodeGeneratorInspector.py (115964 => 115965)


--- trunk/Source/WebCore/inspector/CodeGeneratorInspector.py	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/inspector/CodeGeneratorInspector.py	2012-05-03 12:39:29 UTC (rev 115965)
@@ -1242,9 +1242,9 @@
             return *reinterpret_cast<RefPtr<%s>*>(&m_result);
         }
 
-        operator PassRefPtr<%s> ()
+        PassRefPtr<%s> release()
         {
-            return RefPtr<%s>(*this);
+            return RefPtr<%s>(*this).release();
         }
     };
 

Modified: trunk/Source/WebCore/inspector/ContentSearchUtils.cpp (115964 => 115965)


--- trunk/Source/WebCore/inspector/ContentSearchUtils.cpp	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/inspector/ContentSearchUtils.cpp	2012-05-03 12:39:29 UTC (rev 115965)
@@ -98,7 +98,8 @@
 {
     return TypeBuilder::Page::SearchMatch::create()
         .setLineNumber(lineNumber)
-        .setLineContent(lineContent);
+        .setLineContent(lineContent)
+        .release();
 }
 
 RegularExpression createSearchRegex(const String& query, bool caseSensitive, bool isRegex)

Modified: trunk/Source/WebCore/inspector/InspectorApplicationCacheAgent.cpp (115964 => 115965)


--- trunk/Source/WebCore/inspector/InspectorApplicationCacheAgent.cpp	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/inspector/InspectorApplicationCacheAgent.cpp	2012-05-03 12:39:29 UTC (rev 115965)
@@ -168,7 +168,8 @@
         .setSize(applicationCacheInfo.m_size)
         .setCreationTime(applicationCacheInfo.m_creationTime)
         .setUpdateTime(applicationCacheInfo.m_updateTime)
-        .setResources(buildArrayForApplicationCacheResources(applicationCacheResources));
+        .setResources(buildArrayForApplicationCacheResources(applicationCacheResources))
+        .release();
 }
 
 PassRefPtr<TypeBuilder::Array<TypeBuilder::ApplicationCache::ApplicationCacheResource> > InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources(const ApplicationCacheHost::ResourceInfoList& applicationCacheResources)

Modified: trunk/Source/WebCore/inspector/InspectorPageAgent.cpp (115964 => 115965)


--- trunk/Source/WebCore/inspector/InspectorPageAgent.cpp	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/inspector/InspectorPageAgent.cpp	2012-05-03 12:39:29 UTC (rev 115965)
@@ -418,7 +418,8 @@
         .setSize((cookie.name.length() + cookie.value.length()))
         .setHttpOnly(cookie.httpOnly)
         .setSecure(cookie.secure)
-        .setSession(cookie.session);
+        .setSession(cookie.session)
+        .release();
 }
 
 static PassRefPtr<TypeBuilder::Array<TypeBuilder::Page::Cookie> > buildArrayForCookies(ListHashSet<Cookie>& cookiesList)
@@ -600,7 +601,8 @@
     return TypeBuilder::Page::SearchResult::create()
         .setUrl(url)
         .setFrameId(frameId)
-        .setMatchesCount(matchesCount);
+        .setMatchesCount(matchesCount)
+        .release();
 }
 
 void InspectorPageAgent::searchInResources(ErrorString*, const String& text, const bool* const optionalCaseSensitive, const bool* const optionalIsRegex, RefPtr<TypeBuilder::Array<TypeBuilder::Page::SearchResult> >& results)

Modified: trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp (115964 => 115965)


--- trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp	2012-05-03 12:39:29 UTC (rev 115965)
@@ -119,7 +119,8 @@
         .setSslEnd(timing.sslEnd)
         .setSendStart(timing.sendStart)
         .setSendEnd(timing.sendEnd)
-        .setReceiveHeadersEnd(timing.receiveHeadersEnd);
+        .setReceiveHeadersEnd(timing.receiveHeadersEnd)
+        .release();
 }
 
 static PassRefPtr<TypeBuilder::Network::Request> buildObjectForResourceRequest(const ResourceRequest& request)
@@ -409,7 +410,8 @@
         return m_styleRecalculationInitiator;
 
     return TypeBuilder::Network::Initiator::create()
-        .setType(TypeBuilder::Network::Initiator::Type::Other);
+        .setType(TypeBuilder::Network::Initiator::Type::Other)
+        .release();
 }
 
 #if ENABLE(WEB_SOCKETS)

Modified: trunk/Source/WebCore/inspector/ScriptCallFrame.cpp (115964 => 115965)


--- trunk/Source/WebCore/inspector/ScriptCallFrame.cpp	2012-05-03 12:35:29 UTC (rev 115964)
+++ trunk/Source/WebCore/inspector/ScriptCallFrame.cpp	2012-05-03 12:39:29 UTC (rev 115965)
@@ -63,7 +63,8 @@
         .setFunctionName(m_functionName)
         .setUrl(m_scriptName)
         .setLineNumber(m_lineNumber)
-        .setColumnNumber(m_column);
+        .setColumnNumber(m_column)
+        .release();
 }
 #endif
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to