[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

cblu cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:44:39 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 20bc0a0b1d43d6687631f2f133ba4b07621c9257
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jun 9 22:40:07 2003 +0000

    	<rdar://problem/3283359>: don't load Cocoa Java plug-in if in Carbon app
    
            Reviewed by darin.
    
            * Plugins.subproj/WebPluginDatabase.h: removed pluginForFilename, wasn't being used
            * Plugins.subproj/WebPluginDatabase.m:
            (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): don't use the plug-in if ![self isCocoa] && [[[webPlugin bundle] bundleIdentifier] isEqualToString:JavaCocoaPluginIdentifier]
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4507 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 70638d3..eb70af7 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,5 +1,15 @@
 2003-06-09  Chris Blumenberg  <cblu at apple.com>
 
+	<rdar://problem/3283359>: don't load Cocoa Java plug-in if in Carbon app
+
+        Reviewed by darin.
+
+        * Plugins.subproj/WebPluginDatabase.h: removed pluginForFilename, wasn't being used
+        * Plugins.subproj/WebPluginDatabase.m:
+        (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): don't use the plug-in if ![self isCocoa] && [[[webPlugin bundle] bundleIdentifier] isEqualToString:JavaCocoaPluginIdentifier]
+
+2003-06-09  Chris Blumenberg  <cblu at apple.com>
+
 	Fixed: <rdar://problem/3284848>: REGRESSION: repro crash in Flash handling null event, going back to Japanese Disney page
 
 	When restarting plug-ins from the BF cache, we were not calling NPP_SetWindow.
diff --git a/WebKit/Plugins.subproj/WebPluginDatabase.h b/WebKit/Plugins.subproj/WebPluginDatabase.h
index 30dc5f8..48db262 100644
--- a/WebKit/Plugins.subproj/WebPluginDatabase.h
+++ b/WebKit/Plugins.subproj/WebPluginDatabase.h
@@ -18,7 +18,6 @@
 // Plug-ins are returned in this order: New plug-in (WBPL), Mach-O Netscape, CFM Netscape
 - (WebBasePluginPackage *)pluginForMIMEType:(NSString *)mimeType;
 - (WebBasePluginPackage *)pluginForExtension:(NSString *)extension;
-- (WebBasePluginPackage *)pluginForFilename:(NSString *)filename;
 
 - (NSArray *)plugins;
 
diff --git a/WebKit/Plugins.subproj/WebPluginDatabase.m b/WebKit/Plugins.subproj/WebPluginDatabase.m
index b267cca..eb79857 100644
--- a/WebKit/Plugins.subproj/WebPluginDatabase.m
+++ b/WebKit/Plugins.subproj/WebPluginDatabase.m
@@ -3,7 +3,7 @@
 	Copyright (c) 2002, Apple, Inc. All rights reserved.
 */
 
-
+#import <WebKit/WebAssertions.h>
 #import <WebKit/WebBasePluginPackage.h>
 #import <WebKit/WebDataSource.h>
 #import <WebKit/WebFrame.h>
@@ -17,6 +17,8 @@
 
 #import <CoreGraphics/CPSProcesses.h>
 
+#define JavaCocoaPluginIdentifier 	@"com.apple.JavaPluginCocoa"
+
 @implementation WebPluginDatabase
 
 static WebPluginDatabase *database = nil;
@@ -56,42 +58,45 @@ static BOOL sIsCocoa = FALSE;
 - (WebBasePluginPackage *)pluginForKey:(NSString *)key withEnumeratorSelector:(SEL)enumeratorSelector
 {
     WebBasePluginPackage *plugin, *CFMPlugin=nil, *machoPlugin=nil, *webPlugin=nil;
-    uint i;
     NSString *lowercaseKey = [key lowercaseString];
+    uint i;
 
-    for(i=0; i<[plugins count]; i++){
+    for (i=0; i<[plugins count]; i++) {
         plugin = [plugins objectAtIndex:i];
-        if([[[plugin performSelector:enumeratorSelector] allObjects] containsObject:lowercaseKey]){
-            if([plugin isKindOfClass:[WebPluginPackage class]]){
-                if(webPlugin == nil){
+        if ([[[plugin performSelector:enumeratorSelector] allObjects] containsObject:lowercaseKey]) {
+            if ([plugin isKindOfClass:[WebPluginPackage class]]) {
+                if (webPlugin == nil) {
                     webPlugin = plugin;
                 }
-            }else if([plugin isKindOfClass:[WebNetscapePluginPackage class]]){
+            } else if([plugin isKindOfClass:[WebNetscapePluginPackage class]]) {
                 WebExecutableType executableType = [(WebNetscapePluginPackage *)plugin executableType];
-                if(executableType == WebCFMExecutableType){
-                    if(CFMPlugin == nil){
+                if (executableType == WebCFMExecutableType) {
+                    if (CFMPlugin == nil) {
                         CFMPlugin = plugin;
                     }
-                }else if(executableType == WebMachOExecutableType){
-                    if(machoPlugin == nil){
+                } else if(executableType == WebMachOExecutableType) {
+                    if (machoPlugin == nil) {
                         machoPlugin = plugin;
                     }
-                }else{
-                    [NSException raise:NSInternalInconsistencyException
-                                format:@"Unknown executable type for plugin"];
+                } else {
+                    ASSERT_NOT_REACHED();
                 }
-            }else{
-                [NSException raise:NSInternalInconsistencyException
-                            format:@"Unknown plugin class: %@", [plugin className]];
+            } else {
+                ASSERT_NOT_REACHED();
             }
         }
     }
+
+    // The Cocoa Java plug-in won't work in a Carbon app.
+    if (webPlugin && ![self isCocoa] && [[[webPlugin bundle] bundleIdentifier] isEqualToString:JavaCocoaPluginIdentifier]) {
+        webPlugin = nil;
+    }
     
-    if(webPlugin && [self isCocoa]){
+    if (webPlugin) {
         return webPlugin;
-    }else if(machoPlugin){
+    } else if (machoPlugin) {
         return machoPlugin;
-    }else{
+    } else {
         return CFMPlugin;
     }
 }
@@ -108,20 +113,6 @@ static BOOL sIsCocoa = FALSE;
        withEnumeratorSelector:@selector(extensionEnumerator)];
 }
 
-- (WebBasePluginPackage *)pluginForFilename:(NSString *)filename
-{
-    uint i;
-    WebBasePluginPackage *plugin;
-    
-    for(i=0; i<[plugins count]; i++){
-        plugin = [plugins objectAtIndex:i];
-        if([[plugin filename] isEqualToString:filename]){
-            return plugin;
-        }
-    }
-    return nil;
-}
-
 - (NSArray *)plugins
 {
     return plugins;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list