Title: [110404] trunk/Source

Diff

Modified: trunk/Source/WebCore/platform/mac/SoftLinking.h (110403 => 110404)


--- trunk/Source/WebCore/platform/mac/SoftLinking.h	2012-03-12 01:14:09 UTC (rev 110403)
+++ trunk/Source/WebCore/platform/mac/SoftLinking.h	2012-03-12 01:29:21 UTC (rev 110404)
@@ -52,6 +52,13 @@
         return frameworkLibrary; \
     }
 
+#define SOFT_LINK_PRIVATE_FRAMEWORK_OPTIONAL(framework) \
+    static void* framework##Library() \
+    { \
+        static void* frameworkLibrary = dlopen("/System/Library/PrivateFrameworks/" #framework ".framework/" #framework, RTLD_NOW); \
+        return frameworkLibrary; \
+    }
+
 #define SOFT_LINK_FRAMEWORK_IN_CORESERVICES_UMBRELLA(framework) \
     static void* framework##Library() \
     { \

Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (110403 => 110404)


--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2012-03-12 01:14:09 UTC (rev 110403)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2012-03-12 01:29:21 UTC (rev 110404)
@@ -67,7 +67,6 @@
 		1C7B0C660EB2464D00A28502 /* WebInspectorClientCF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C7B0C650EB2464D00A28502 /* WebInspectorClientCF.cpp */; };
 		1C8CB07A0AE9830C00B1F6E9 /* WebEditingDelegatePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C8CB0790AE9830C00B1F6E9 /* WebEditingDelegatePrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		1CCFFD130B1F81F2002EE926 /* OldWebAssertions.c in Sources */ = {isa = PBXBuildFile; fileRef = 1CCFFD120B1F81F2002EE926 /* OldWebAssertions.c */; };
-		1CE90729150D5DF0008B4AF7 /* WebInspector.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1CE90728150D5DF0008B4AF7 /* WebInspector.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
 		224100F3091818D900D2D266 /* WebPluginsPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 224100F2091818D900D2D266 /* WebPluginsPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		224100F90918190100D2D266 /* WebPluginsPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = 224100F80918190100D2D266 /* WebPluginsPrivate.m */; };
 		225F881509F97E8A00423A40 /* WebPluginPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 225F881409F97E8A00423A40 /* WebPluginPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
@@ -449,7 +448,6 @@
 		1C904FD40BA9DD0F0081E9D0 /* DebugRelease.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = DebugRelease.xcconfig; sourceTree = "<group>"; };
 		1C904FD50BA9DD0F0081E9D0 /* Base.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Base.xcconfig; sourceTree = "<group>"; };
 		1CCFFD120B1F81F2002EE926 /* OldWebAssertions.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = OldWebAssertions.c; sourceTree = "<group>"; };
-		1CE90728150D5DF0008B4AF7 /* WebInspector.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = WebInspector.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		224100F2091818D900D2D266 /* WebPluginsPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = WebPluginsPrivate.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
 		224100F80918190100D2D266 /* WebPluginsPrivate.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.objc; path = WebPluginsPrivate.m; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
 		225F881409F97E8A00423A40 /* WebPluginPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPluginPrivate.h; sourceTree = "<group>"; };
@@ -787,7 +785,6 @@
 				1A20D08B0ED384F20043FA9F /* QuartzCore.framework in Frameworks */,
 				9398112F0824BF01008DF038 /* Security.framework in Frameworks */,
 				9398112C0824BF01008DF038 /* WebCore.framework in Frameworks */,
-				1CE90729150D5DF0008B4AF7 /* WebInspector.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -843,7 +840,6 @@
 				1A20D08A0ED384F20043FA9F /* QuartzCore.framework */,
 				830E81E005853AC000AD0891 /* Security.framework */,
 				F738C9EA03FAD3DF0321FBE0 /* WebCore.framework */,
-				1CE90728150D5DF0008B4AF7 /* WebInspector.framework */,
 			);
 			name = "Frameworks and Libraries";
 			sourceTree = "<group>";

Modified: trunk/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm (110403 => 110404)


--- trunk/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm	2012-03-12 01:14:09 UTC (rev 110403)
+++ trunk/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm	2012-03-12 01:29:21 UTC (rev 110404)
@@ -41,10 +41,13 @@
 #import "WebViewInternal.h"
 #import <WebCore/InspectorController.h>
 #import <WebCore/Page.h>
+#import <WebCore/SoftLinking.h>
 #import <WebKit/DOMExtensions.h>
 #import <WebKitSystemInterface.h>
 #import <wtf/PassOwnPtr.h>
 
+SOFT_LINK_PRIVATE_FRAMEWORK_OPTIONAL(WebInspector)
+
 using namespace WebCore;
 
 @interface WebInspectorWindowController : NSWindowController <NSWindowDelegate> {
@@ -162,6 +165,9 @@
 
 static bool useWebKitWebInspector()
 {
+    // Call the soft link framework function to dlopen it, then [NSBundle bundleWithIdentifier:] will work.
+    WebInspectorLibrary();
+
     return [[NSUserDefaults standardUserDefaults] boolForKey:@"UseWebKitWebInspector"] ||
         ![[NSBundle bundleWithIdentifier:@"com.apple.WebInspector"] pathForResource:@"Main" ofType:@"html"];
 }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to