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)