[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:37:49 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 165e7f640b54aeb7d263529536f9d70f6a08cc56
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Apr 18 20:15:56 2003 +0000

    	Fixed: 3172389 - Safari doesn't parse attributes within the OBJECT tag
    
            Reviewed by dave.
    
            * khtml/rendering/render_frames.cpp:
            (RenderPartObject::updateWidget): add attributes from within the OBJECT tag to params, the list of attributes we pass to plug-ins. Don't override attributes that are already in params.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4142 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index ac48280..ea0b387 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,12 @@
+2003-04-18  Chris Blumenberg  <cblu at apple.com>
+
+	Fixed: 3172389 - Safari doesn't parse attributes within the OBJECT tag
+
+        Reviewed by dave.
+
+        * khtml/rendering/render_frames.cpp:
+        (RenderPartObject::updateWidget): add attributes from within the OBJECT tag to params, the list of attributes we pass to plug-ins. Don't override attributes that are already in params.
+
 2003-04-18  David Hyatt  <hyatt at apple.com>
 
 	Make sure display:none is ignored and not accidentally mutated
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index ac48280..ea0b387 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,12 @@
+2003-04-18  Chris Blumenberg  <cblu at apple.com>
+
+	Fixed: 3172389 - Safari doesn't parse attributes within the OBJECT tag
+
+        Reviewed by dave.
+
+        * khtml/rendering/render_frames.cpp:
+        (RenderPartObject::updateWidget): add attributes from within the OBJECT tag to params, the list of attributes we pass to plug-ins. Don't override attributes that are already in params.
+
 2003-04-18  David Hyatt  <hyatt at apple.com>
 
 	Make sure display:none is ignored and not accidentally mutated
diff --git a/WebCore/khtml/rendering/render_frames.cpp b/WebCore/khtml/rendering/render_frames.cpp
index 049d12f..c02324d 100644
--- a/WebCore/khtml/rendering/render_frames.cpp
+++ b/WebCore/khtml/rendering/render_frames.cpp
@@ -682,8 +682,25 @@ void RenderPartObject::updateWidget()
 
   if(element()->id() == ID_OBJECT) {
 
-      // check for embed child object
       HTMLObjectElementImpl *o = static_cast<HTMLObjectElementImpl *>(element());
+
+      // Add attributes within the OBJECT tag to params for attributes that params doesn't already contains.
+      NamedAttrMapImpl* attributes = o->attributes();
+      for (unsigned long index = 0; index < attributes->length(); ++index) {
+          AttributeImpl* attribute = attributes->attributeItem(index);
+          QString attributeName = o->getDocument()->attrName(attribute->id()).string();
+          unsigned long n;
+          for (n = 0; n < params.count(); ++n) {
+              if (params[n].lower().startsWith(attributeName.lower() + "=\"")) {
+                  break;
+              }
+          }
+          if (n == params.count()) {
+              params.append(attributeName + "=\"" + attribute->value().string() + "\"");
+          }
+      }
+
+      // check for embed child object
       HTMLEmbedElementImpl *embed = 0;
       for (NodeImpl *child = o->firstChild(); child; child = child->nextSibling())
           if ( child->id() == ID_EMBED ) {
@@ -767,21 +784,20 @@ void RenderPartObject::updateWidget()
 #endif
               return;
           }
-#if APPLE_CHANGES
-          // Fix for 2894742
-          // The EMBED attributes must override the PARAM attributes.
-          // This mimics IE's behavior.
+
+          // The EMBED attributes must override the PARAM attributes. This mimics IE's behavior.
           NamedAttrMapImpl* attributes = embed->attributes();
           for (unsigned long index = 0; index < attributes->length(); ++index) {
               AttributeImpl* attribute = attributes->attributeItem(index);
+              QString attributeName = embed->getDocument()->attrName(attribute->id()).string();
               for (unsigned long n = 0; n < params.count(); ++n) {
-                  if(params[n].lower().startsWith(embed->getDocument()->attrName(attribute->id()).string().lower())){
+                  if (params[n].lower().startsWith(attributeName.lower() + "=\"")) {
                       params.remove(params[n]);
                   }
               }
-              params.append(embed->getDocument()->attrName(attribute->id()).string() + "=\"" + attribute->value().string() + "\"");
+              params.append(attributeName + "=\"" + attribute->value().string() + "\"");
           }
-#endif
+
           part->requestObject( this, url, serviceType, params );
       }
   }

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list