Title: [96014] trunk/Source/WebKit2
Revision
96014
Author
[email protected]
Date
2011-09-26 15:46:28 -0700 (Mon, 26 Sep 2011)

Log Message

REGRESSION (r95747): Activating the web inspector causes the web process to be killed
https://bugs.webkit.org/show_bug.cgi?id=68762

Reviewed by Anders Carlsson.

* UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::createInspectorPage):
Tell Web process that loading resources from WebCore resources directory is OK.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadHTMLString):
(WebKit::WebPageProxy::loadAlternateHTMLString):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
* UIProcess/WebProcessProxy.h:
Renamed willLoadHTMLStringWithBaseURL to more generic assumeReadAccessToBaseURL.

* UIProcess/WebInspectorProxy.h:
* UIProcess/efl/WebInspectorEfl.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/gtk/WebInspectorGtk.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/qt/WebInspectorProxyQt.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
Report what base directory Inspector has access to.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (96013 => 96014)


--- trunk/Source/WebKit2/ChangeLog	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/ChangeLog	2011-09-26 22:46:28 UTC (rev 96014)
@@ -1,3 +1,34 @@
+2011-09-26  Alexey Proskuryakov  <[email protected]>
+
+        REGRESSION (r95747): Activating the web inspector causes the web process to be killed
+        https://bugs.webkit.org/show_bug.cgi?id=68762
+
+        Reviewed by Anders Carlsson.
+
+        * UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::createInspectorPage):
+        Tell Web process that loading resources from WebCore resources directory is OK.
+
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::loadHTMLString):
+        (WebKit::WebPageProxy::loadAlternateHTMLString):
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
+        * UIProcess/WebProcessProxy.h:
+        Renamed willLoadHTMLStringWithBaseURL to more generic assumeReadAccessToBaseURL.
+
+        * UIProcess/WebInspectorProxy.h:
+        * UIProcess/efl/WebInspectorEfl.cpp:
+        (WebKit::WebInspectorProxy::inspectorBaseURL):
+        * UIProcess/gtk/WebInspectorGtk.cpp:
+        (WebKit::WebInspectorProxy::inspectorBaseURL):
+        * UIProcess/mac/WebInspectorProxyMac.mm:
+        (WebKit::WebInspectorProxy::inspectorBaseURL):
+        * UIProcess/qt/WebInspectorProxyQt.cpp:
+        (WebKit::WebInspectorProxy::inspectorBaseURL):
+        * UIProcess/win/WebInspectorProxyWin.cpp:
+        (WebKit::WebInspectorProxy::inspectorBaseURL):
+        Report what base directory Inspector has access to.
+
 2011-09-26  Nayan Kumar K  <[email protected]>
 
         Added WKHitTestResult API's.

Modified: trunk/Source/WebKit2/UIProcess/WebInspectorProxy.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/WebInspectorProxy.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/WebInspectorProxy.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -212,6 +212,7 @@
     String url = ""
     if (shouldOpenAttached())
         url += "?docked=true";
+    m_page->process()->assumeReadAccessToBaseURL(inspectorBaseURL());
     inspectorPage->loadURL(url);
 }
 

Modified: trunk/Source/WebKit2/UIProcess/WebInspectorProxy.h (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/WebInspectorProxy.h	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/WebInspectorProxy.h	2011-09-26 22:46:28 UTC (rev 96014)
@@ -125,6 +125,7 @@
 
     // Implemented the platform WebInspectorProxy file
     String inspectorPageURL() const;
+    String inspectorBaseURL() const;
 
     // Called by WebInspectorProxy messages
     void createInspectorPage(uint64_t& inspectorPageID, WebPageCreationParameters&);

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -447,7 +447,7 @@
     if (!isValid())
         reattachToWebProcess();
 
-    process()->willLoadHTMLStringWithBaseURL(baseURL);
+    process()->assumeReadAccessToBaseURL(baseURL);
     process()->send(Messages::WebPage::LoadHTMLString(htmlString, baseURL), m_pageID);
     process()->responsivenessTimer()->start();
 }
@@ -460,7 +460,7 @@
     if (m_mainFrame)
         m_mainFrame->setUnreachableURL(unreachableURL);
 
-    process()->willLoadHTMLStringWithBaseURL(baseURL);
+    process()->assumeReadAccessToBaseURL(baseURL);
     process()->send(Messages::WebPage::LoadAlternateHTMLString(htmlString, baseURL, unreachableURL), m_pageID);
     process()->responsivenessTimer()->start();
 }

Modified: trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -203,7 +203,7 @@
     m_backForwardListItemMap.set(item->itemID(), item);
 }
 
-void WebProcessProxy::willLoadHTMLStringWithBaseURL(const String& urlString)
+void WebProcessProxy::assumeReadAccessToBaseURL(const String& urlString)
 {
     KURL url(KURL(), urlString);
     if (!url.isLocalFile())

Modified: trunk/Source/WebKit2/UIProcess/WebProcessProxy.h (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/WebProcessProxy.h	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/WebProcessProxy.h	2011-09-26 22:46:28 UTC (rev 96014)
@@ -105,7 +105,7 @@
     void registerNewWebBackForwardListItem(WebBackForwardListItem*);
 
     void willAcquireUniversalFileReadSandboxExtension() { m_mayHaveUniversalFileReadSandboxExtension = true; }
-    void willLoadHTMLStringWithBaseURL(const String&);
+    void assumeReadAccessToBaseURL(const String&);
 
     bool checkURLReceivedFromWebProcess(const String&);
     bool checkURLReceivedFromWebProcess(const WebCore::KURL&);

Modified: trunk/Source/WebKit2/UIProcess/efl/WebInspectorEfl.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/efl/WebInspectorEfl.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/efl/WebInspectorEfl.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -65,6 +65,12 @@
     return String();
 }
 
+String WebInspectorProxy::inspectorBaseURL() const
+{
+    notImplemented();
+    return String();
+}
+
 unsigned WebInspectorProxy::platformInspectedWindowHeight()
 {
     notImplemented();

Modified: trunk/Source/WebKit2/UIProcess/gtk/WebInspectorGtk.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/gtk/WebInspectorGtk.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/gtk/WebInspectorGtk.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -66,6 +66,12 @@
     return String();
 }
 
+String WebInspectorProxy::inspectorBaseURL() const
+{
+    notImplemented();
+    return String();
+}
+
 unsigned WebInspectorProxy::platformInspectedWindowHeight()
 {
     notImplemented();

Modified: trunk/Source/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm	2011-09-26 22:46:28 UTC (rev 96014)
@@ -254,6 +254,15 @@
     return [[NSURL fileURLWithPath:path] absoluteString];
 }
 
+String WebInspectorProxy::inspectorBaseURL() const
+{
+    // Web Inspector uses localized strings, so it's not contained within inspector directory.
+    NSString *path = [[NSBundle bundleWithIdentifier:@"com.apple.WebCore"] resourcePath];
+    ASSERT(path);
+
+    return [[NSURL fileURLWithPath:path] absoluteString];
+}
+
 } // namespace WebKit
 
 #endif // ENABLE(INSPECTOR)

Modified: trunk/Source/WebKit2/UIProcess/qt/WebInspectorProxyQt.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/qt/WebInspectorProxyQt.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/qt/WebInspectorProxyQt.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -80,7 +80,7 @@
     notImplemented();
 }
 
-String WebInspectorProxy::inspectorPageURL() const
+String WebInspectorProxy::inspectorBaseURL() const
 {
     notImplemented();
     return String();

Modified: trunk/Source/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp (96013 => 96014)


--- trunk/Source/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp	2011-09-26 22:45:42 UTC (rev 96013)
+++ trunk/Source/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp	2011-09-26 22:46:28 UTC (rev 96014)
@@ -325,6 +325,16 @@
     return String(CFURLGetString(htmlURLRef.get()));
 }
 
+String WebInspectorProxy::inspectorBaseURL() const
+{
+    // Web Inspector uses localized strings, so it's not contained within inspector directory.
+    RetainPtr<CFURLRef> htmlURLRef(AdoptCF, CFBundleCopyResourcesDirectoryURL(webKitBundle()));
+    if (!htmlURLRef)
+        return String();
+
+    return String(CFURLGetString(htmlURLRef.get()));
+}
+
 } // namespace WebKit
 
 #endif // ENABLE(INSPECTOR)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to