[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

bweinstein at apple.com bweinstein at apple.com
Thu Apr 8 01:08:12 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit b8cf5d82247fbeb851e465c88c00c673b32f849c
Author: bweinstein at apple.com <bweinstein at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Jan 14 20:47:53 2010 +0000

    [DnD] effectAllowed and dropEffect can be set to bogus values.
    Fixes <https://bugs.webkit.org/show_bug.cgi?id=33635>.
    
    Reviewed by Oliver Hunt.
    
    WebCore:
    
    Test to make aure dropEffect and effectAllowed are being set to valid values
    when they are being set (list of valid values given by HTML5 specification).
    
    Also, drive by change to initialize dropEffect to none (as described in spec).
    
    Test: fast/events/bogus-dropEffect-effectAllowed.html
    
    * dom/Clipboard.cpp:
    (WebCore::Clipboard::Clipboard): Initialize m_dropEffect to "none".
    (WebCore::Clipboard::setDropEffect): Check if dropEffect is being set to a valid value.
    (WebCore::Clipboard::setEffectAllowed): Check if effectAllowed is being set to a valid value.
    
    LayoutTests:
    
    Added a test to check the handling of setting effectAllowed and
    dropEffect to bogus values (that it gets ignored), and updated results
    to drag-and-drop because it uses a dummy value.
    
    Also, fixed a few tests that broke when the default dropEffect was set to
    none to match the spec.
    
    * fast/events/bogus-dropEffect-effectAllowed-expected.txt: Added.
    * fast/events/bogus-dropEffect-effectAllowed.html: Added.
    * platform/gtk/fast/events/bogus-dropEffect-effectAllowed-expected.txt: Added.
    * platform/qt/fast/events/bogus-dropEffect-effectAllowed.html: Added.
    
    * fast/events/drag-and-drop-expected.txt:
    * fast/events/drag-and-drop.html:
    * editing/pasteboard/script-tests/files-during-page-drags.js:
    * editing/pasteboard/get-data-text-plain-drop.html:
    * fast/events/resources/drag-in-frames-right.html:
    * http/tests/local/resources/send-dragged-file.js:
    * http/tests/misc/bubble-drag-events.html:
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53287 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 9e95a1b..87a740f 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,30 @@
+2010-01-14  Brian Weinstein  <bweinstein at apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        [DnD] effectAllowed and dropEffect can be set to bogus values.
+        Fixes <https://bugs.webkit.org/show_bug.cgi?id=33635>.
+        
+        Added a test to check the handling of setting effectAllowed and
+        dropEffect to bogus values (that it gets ignored), and updated results
+        to drag-and-drop because it uses a dummy value.
+        
+        Also, fixed a few tests that broke when the default dropEffect was set to
+        none to match the spec.
+
+        * fast/events/bogus-dropEffect-effectAllowed-expected.txt: Added.
+        * fast/events/bogus-dropEffect-effectAllowed.html: Added.
+        * platform/gtk/fast/events/bogus-dropEffect-effectAllowed-expected.txt: Added.
+        * platform/qt/fast/events/bogus-dropEffect-effectAllowed.html: Added.
+
+        * fast/events/drag-and-drop-expected.txt:
+        * fast/events/drag-and-drop.html:
+        * editing/pasteboard/script-tests/files-during-page-drags.js:
+        * editing/pasteboard/get-data-text-plain-drop.html:
+        * fast/events/resources/drag-in-frames-right.html:
+        * http/tests/local/resources/send-dragged-file.js:
+        * http/tests/misc/bubble-drag-events.html:
+
 2010-01-14  Adam Roben  <aroben at apple.com>
 
         Add new test from r53277 to the GTK+ Skipped list
diff --git a/LayoutTests/editing/pasteboard/get-data-text-plain-drop.html b/LayoutTests/editing/pasteboard/get-data-text-plain-drop.html
index 2f55c08..eb358af 100644
--- a/LayoutTests/editing/pasteboard/get-data-text-plain-drop.html
+++ b/LayoutTests/editing/pasteboard/get-data-text-plain-drop.html
@@ -20,6 +20,7 @@ var handleDrop = function(e) {
 }
 
 var handleDrag = function(e) {
+    e.dataTransfer.dropEffect = "copy";
     // Cancel the drag, so we get the drop.
     e.preventDefault();
 }
diff --git a/LayoutTests/editing/pasteboard/script-tests/files-during-page-drags.js b/LayoutTests/editing/pasteboard/script-tests/files-during-page-drags.js
index de2a6d9..2bc1a70 100644
--- a/LayoutTests/editing/pasteboard/script-tests/files-during-page-drags.js
+++ b/LayoutTests/editing/pasteboard/script-tests/files-during-page-drags.js
@@ -14,6 +14,7 @@ dragTarget.ondragenter = function() {
     event.dataTransfer.dropEffect = "copy";
 }
 dragTarget.ondragover = function() {
+    event.dataTransfer.dropEffect = "copy";
     event.preventDefault();
 }
 dragTarget.ondrop = function() {
diff --git a/LayoutTests/fast/events/bogus-dropEffect-effectAllowed-expected.txt b/LayoutTests/fast/events/bogus-dropEffect-effectAllowed-expected.txt
new file mode 100644
index 0000000..e7c555f
--- /dev/null
+++ b/LayoutTests/fast/events/bogus-dropEffect-effectAllowed-expected.txt
@@ -0,0 +1,56 @@
+This test checks that effectAllowed and dropEffect cannot be set to values that aren't defined in the spec
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS event.dataTransfer.effectAllowed is "all"
+PASS event.dataTransfer.effectAllowed is "copy"
+PASS event.dataTransfer.effectAllowed is "copy"
+PASS event.dataTransfer.effectAllowed is "copyLink"
+PASS event.dataTransfer.effectAllowed is "copyLink"
+PASS event.dataTransfer.effectAllowed is "copyMove"
+PASS event.dataTransfer.effectAllowed is "copyMove"
+PASS event.dataTransfer.effectAllowed is "link"
+PASS event.dataTransfer.effectAllowed is "linkMove"
+PASS event.dataTransfer.effectAllowed is "move"
+PASS event.dataTransfer.effectAllowed is "none"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "link"
+PASS event.dataTransfer.dropEffect is "link"
+PASS event.dataTransfer.dropEffect is "move"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.dropEffect is "link"
+PASS event.dataTransfer.dropEffect is "link"
+PASS event.dataTransfer.dropEffect is "move"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.dropEffect is "none"
+
+TEST COMPLETE
+
diff --git a/LayoutTests/fast/events/bogus-dropEffect-effectAllowed.html b/LayoutTests/fast/events/bogus-dropEffect-effectAllowed.html
new file mode 100644
index 0000000..92e49ac
--- /dev/null
+++ b/LayoutTests/fast/events/bogus-dropEffect-effectAllowed.html
@@ -0,0 +1,146 @@
+<html>
+<head>
+<link rel="stylesheet" href="../js/resources/js-test-style.css">
+<script src="../js/resources/js-test-pre.js"></script>
+<style>
+#dropTarget, #dragMe { text-align: center; display: table-cell; vertical-align: middle }
+#dropTarget {width: 256px; height: 256px; border: 1px dashed}
+#dragMe {-webkit-user-drag: element; -webkit-user-select: none; background: #ff0000; width: 64px; height: 64px; color: white}
+</style>
+<script>
+    var dragMe;
+    var dropTarget;
+    var effectAllowedElem;
+    var dropEffectElem;
+    var consoleElm;
+    var event;
+    
+    window.onload = function()
+    {
+        dragMe = document.getElementById("dragMe");
+        dropTarget = document.getElementById("dropTarget");
+        consoleElm = document.getElementById("console");
+        
+        if (!dragMe || !dropTarget || !consoleElm)
+            return;
+        
+        dragMe.ondragstart = dragStart;
+        dragMe.ondragend = dragEnd;
+        
+        dropTarget.ondragenter = dragEntered;
+        dropTarget.ondragover = dragOver;
+        dropTarget.ondrop = drop;
+        
+        runTest();
+    }
+    
+    function dragStart(e)
+    {
+        var validEffectAllowedList = ["all", "copy", "copyLink", "copyMove", "link", "linkMove", "move", "none", "uninitialized"];
+        var effectAllowedListToTest = ["all", "copy", "bogus", "copyLink", "wrong", "copyMove", "linkCopyMove", "link",
+            "linkMove", "move", "none", "uninitialized", "dummy", "bogus", "fake", "illegal"];
+        
+        event = e;
+        
+        for (var i = 0; i < effectAllowedListToTest.length; i++) {
+            var effectAllowedBefore = e.dataTransfer.effectAllowed;
+            e.dataTransfer.effectAllowed = effectAllowedListToTest[i];
+            if (validEffectAllowedList.indexOf(effectAllowedListToTest[i]) != -1)
+                shouldBeEqualToString("event.dataTransfer.effectAllowed", effectAllowedListToTest[i]);
+            else
+                shouldBeEqualToString("event.dataTransfer.effectAllowed", effectAllowedBefore);
+        }
+        
+        e.dataTransfer.setData('Text', e.target.textContent);
+    }
+    
+    function dragEnd(e)
+    {
+        return;
+    }
+    
+    function dragEntered(e)
+    {
+        dragEnteredAndUpdated(e);
+    }
+    
+    function dragOver(e)
+    {
+        dragEnteredAndUpdated(e);
+    }
+    
+    function dragEnteredAndUpdated(e)
+    {
+        var validDropEffectList = ["none", "copy", "link", "move", "link"];
+        var dropEffectListToTest = ["all", "copy", "bogus", "copyLink", "wrong", "copyMove", "linkCopyMove", "link",
+            "linkMove", "move", "none", "uninitialized", "dummy", "bogus", "fake", "illegal"];
+        
+        event = e;
+        
+        for (var i = 0; i < dropEffectListToTest.length; i++) {
+            var dropEffectBefore = e.dataTransfer.dropEffect;
+            e.dataTransfer.dropEffect = dropEffectListToTest[i];
+
+            if (validDropEffectList.indexOf(dropEffectListToTest[i]) != -1)
+                shouldBeEqualToString("event.dataTransfer.dropEffect", dropEffectListToTest[i]);
+            else
+                shouldBeEqualToString("event.dataTransfer.dropEffect", dropEffectBefore);
+
+        }
+
+        cancelDrag(e);
+    }
+    
+    function drop(e)
+    {
+        cancelDrag(e);
+    }
+    
+    function cancelDrag(e)
+    {
+        e.preventDefault();
+    }
+
+    function runTest()
+    {
+        if (!window.eventSender)
+            return;
+            
+        if (window.layoutTestController)
+            layoutTestController.dumpAsText();
+            
+        var startX = dragMe.offsetLeft + 10;
+        var startY = dragMe.offsetTop + dragMe.offsetHeight / 2;
+        var endX = dropTarget.offsetLeft + 10;
+        var endY = dropTarget.offsetTop + dropTarget.offsetHeight / 2;
+        
+        eventSender.mouseMoveTo(startX, startY);
+        eventSender.mouseDown();
+        eventSender.leapForward(100);
+        eventSender.mouseMoveTo(endX, endY);
+        eventSender.mouseUp();
+
+        var testContainer = document.getElementById("test-container");
+        if (testContainer)
+            document.body.removeChild(testContainer);
+        debug('<br /><span class="pass">TEST COMPLETE</span>');
+    }
+</script>
+</head>
+<body>
+    <p id="description"></p>
+    <div id="test-container">
+        <br/><br/>
+        <div id="dropTarget">Drop the red square onto me.<br/><br/></div>
+        <hr/>
+        <p>Items that can be dragged to the drop target:</p>
+        <div id="dragMe" draggable="true">Square</div>
+        <hr/>
+    </div>
+    <div id="console"></div>
+    <script>
+        description("This test checks that effectAllowed and dropEffect cannot be set to values that aren't defined in the spec");
+        var successfullyParsed = true;
+    </script>
+</body>
+</html>
diff --git a/LayoutTests/fast/events/drag-and-drop-expected.txt b/LayoutTests/fast/events/drag-and-drop-expected.txt
index 6ed7061..7c2de07 100644
--- a/LayoutTests/fast/events/drag-and-drop-expected.txt
+++ b/LayoutTests/fast/events/drag-and-drop-expected.txt
@@ -92,10 +92,15 @@ PASS event.dataTransfer.dropEffect is "none"
 
 When effectAllowed == "dummy"
 
+PASS event.dataTransfer.effectAllowed is "uninitialized"
 PASS event.dataTransfer.dropEffect is "none"
-PASS event.dataTransfer.dropEffect is "none"
-PASS event.dataTransfer.dropEffect is "none"
-PASS event.dataTransfer.dropEffect is "none"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.dropEffect is "copy"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.dropEffect is "move"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.dropEffect is "link"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
 PASS event.dataTransfer.dropEffect is "none"
 
 TEST COMPLETE
diff --git a/LayoutTests/fast/events/drag-and-drop.html b/LayoutTests/fast/events/drag-and-drop.html
index 842b607..92cbcd3 100644
--- a/LayoutTests/fast/events/drag-and-drop.html
+++ b/LayoutTests/fast/events/drag-and-drop.html
@@ -99,6 +99,16 @@
             chosenEffectAllowed = "uninitialized";
         }
         
+        if (chosenEffectAllowed === "dummy") {
+            // If a bad effectAllowed is attempted to be set, it should never be set, and the
+            // effectAllowed should be uninitialized.
+            shouldBeEqualToString("event.dataTransfer.effectAllowed", "uninitialized");
+            
+            // Then set the chosenEffectAllowed so isDropEffectAllowed matches the HTML5 spec, and
+            // doesn't need special cases for undefined.
+            chosenEffectAllowed = "uninitialized";
+        }
+        
         if (isDropEffectAllowed(chosenDropEffect, chosenEffectAllowed))
             shouldBeEqualToString('event.dataTransfer.dropEffect', dropEffectElem.options[dropEffectElem.selectedIndex].value);
         else
diff --git a/LayoutTests/fast/events/resources/drag-in-frames-right.html b/LayoutTests/fast/events/resources/drag-in-frames-right.html
index e9fee7f..0e428c5 100644
--- a/LayoutTests/fast/events/resources/drag-in-frames-right.html
+++ b/LayoutTests/fast/events/resources/drag-in-frames-right.html
@@ -22,7 +22,7 @@ function log(message) {
      ondragstart="alert('ondragstart right target')"
      ondragend="alert('ondragend right target')"
      ondragenter="log('ondragenter right target'); return false;"
-     ondragover="log('ondragover right target'); return false;"
+     ondragover="log('ondragover right target'); event.dataTransfer.dropEffect = 'copy'; return false;"
      ondragleave="log('ondragleave right target')"
      ondrop="log('ondrop right target')">
   <span style="position: relative; top: 50">And here</span>
diff --git a/LayoutTests/http/tests/local/resources/send-dragged-file.js b/LayoutTests/http/tests/local/resources/send-dragged-file.js
index 3c393e8..bed4078 100644
--- a/LayoutTests/http/tests/local/resources/send-dragged-file.js
+++ b/LayoutTests/http/tests/local/resources/send-dragged-file.js
@@ -12,6 +12,7 @@ fileInput.addEventListener("dragenter", function() {
 }, false);
 
 fileInput.addEventListener("dragover", function() {
+    event.dataTransfer.dropEffect = "copy";
     event.preventDefault();
 }, false);
 
diff --git a/LayoutTests/http/tests/misc/bubble-drag-events.html b/LayoutTests/http/tests/misc/bubble-drag-events.html
index aae0fc1..b6bda0b 100644
--- a/LayoutTests/http/tests/misc/bubble-drag-events.html
+++ b/LayoutTests/http/tests/misc/bubble-drag-events.html
@@ -13,6 +13,7 @@ function testDragEventBubbling(dragTargetId, dragTargetParentId)
     }
     dragTargetParent.ondragover = function() {
         log("ondragover");
+        event.dataTransfer.dropEffect = "copy";
         event.preventDefault();  // Cancel the drag, so we get the drop.
     }
     dragTargetParent.ondragleave = function() {
diff --git a/LayoutTests/platform/gtk/fast/events/bogus-dropEffect-effectAllowed-expected.txt b/LayoutTests/platform/gtk/fast/events/bogus-dropEffect-effectAllowed-expected.txt
new file mode 100644
index 0000000..929073b
--- /dev/null
+++ b/LayoutTests/platform/gtk/fast/events/bogus-dropEffect-effectAllowed-expected.txt
@@ -0,0 +1,24 @@
+This test checks that effectAllowed and dropEffect cannot be set to values that aren't defined in the spec
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS event.dataTransfer.effectAllowed is "all"
+PASS event.dataTransfer.effectAllowed is "copy"
+PASS event.dataTransfer.effectAllowed is "copy"
+PASS event.dataTransfer.effectAllowed is "copyLink"
+PASS event.dataTransfer.effectAllowed is "copyLink"
+PASS event.dataTransfer.effectAllowed is "copyMove"
+PASS event.dataTransfer.effectAllowed is "copyMove"
+PASS event.dataTransfer.effectAllowed is "link"
+PASS event.dataTransfer.effectAllowed is "linkMove"
+PASS event.dataTransfer.effectAllowed is "move"
+PASS event.dataTransfer.effectAllowed is "none"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+
+TEST COMPLETE
+
diff --git a/LayoutTests/platform/qt/fast/events/bogus-dropEffect-effectAllowed-expected.txt b/LayoutTests/platform/qt/fast/events/bogus-dropEffect-effectAllowed-expected.txt
new file mode 100644
index 0000000..929073b
--- /dev/null
+++ b/LayoutTests/platform/qt/fast/events/bogus-dropEffect-effectAllowed-expected.txt
@@ -0,0 +1,24 @@
+This test checks that effectAllowed and dropEffect cannot be set to values that aren't defined in the spec
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS event.dataTransfer.effectAllowed is "all"
+PASS event.dataTransfer.effectAllowed is "copy"
+PASS event.dataTransfer.effectAllowed is "copy"
+PASS event.dataTransfer.effectAllowed is "copyLink"
+PASS event.dataTransfer.effectAllowed is "copyLink"
+PASS event.dataTransfer.effectAllowed is "copyMove"
+PASS event.dataTransfer.effectAllowed is "copyMove"
+PASS event.dataTransfer.effectAllowed is "link"
+PASS event.dataTransfer.effectAllowed is "linkMove"
+PASS event.dataTransfer.effectAllowed is "move"
+PASS event.dataTransfer.effectAllowed is "none"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+PASS event.dataTransfer.effectAllowed is "uninitialized"
+
+TEST COMPLETE
+
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 82c009c..f8fb127 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,22 @@
+2010-01-14  Brian Weinstein  <bweinstein at apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        [DnD] effectAllowed and dropEffect can be set to bogus values.
+        Fixes <https://bugs.webkit.org/show_bug.cgi?id=33635>.
+        
+        Test to make aure dropEffect and effectAllowed are being set to valid values
+        when they are being set (list of valid values given by HTML5 specification).
+        
+        Also, drive by change to initialize dropEffect to none (as described in spec).
+
+        Test: fast/events/bogus-dropEffect-effectAllowed.html
+
+        * dom/Clipboard.cpp:
+        (WebCore::Clipboard::Clipboard): Initialize m_dropEffect to "none".
+        (WebCore::Clipboard::setDropEffect): Check if dropEffect is being set to a valid value.
+        (WebCore::Clipboard::setEffectAllowed): Check if effectAllowed is being set to a valid value.
+
 2010-01-14  Kent Hansen  <kent.hansen at nokia.com>
 
         Reviewed by Darin Adler.
diff --git a/WebCore/dom/Clipboard.cpp b/WebCore/dom/Clipboard.cpp
index b272f5d..2a0386f 100644
--- a/WebCore/dom/Clipboard.cpp
+++ b/WebCore/dom/Clipboard.cpp
@@ -35,7 +35,8 @@
 namespace WebCore {
 
 Clipboard::Clipboard(ClipboardAccessPolicy policy, bool isForDragging) 
-    : m_policy(policy) 
+    : m_policy(policy)
+    , m_dropEffect("none")
     , m_effectAllowed("uninitialized")
     , m_dragStarted(false)
     , m_forDragging(isForDragging)
@@ -130,6 +131,10 @@ void Clipboard::setDropEffect(const String &effect)
     if (!m_forDragging)
         return;
 
+    // The attribute must ignore any attempts to set it to a value other than none, copy, link, and move. 
+    if (effect != "none" && effect != "copy"  && effect != "link" && effect != "move")
+        return;
+
     if (m_policy == ClipboardReadable || m_policy == ClipboardTypesReadable)
         m_dropEffect = effect;
 }
@@ -139,6 +144,17 @@ void Clipboard::setEffectAllowed(const String &effect)
     if (!m_forDragging)
         return;
 
+    if (dragOpFromIEOp(effect) == DragOperationPrivate) {
+        // This means that there was no conversion, and the effectAllowed that
+        // we are passed isn't a valid effectAllowed, so we should ignore it,
+        // and not set m_effectAllowed.
+
+        // The attribute must ignore any attempts to set it to a value other than 
+        // none, copy, copyLink, copyMove, link, linkMove, move, all, and uninitialized.
+        return;
+    }
+
+
     if (m_policy == ClipboardWritable)
         m_effectAllowed = effect;
 }

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list