Changeset 79501 in webkit
- Timestamp:
- Feb 23, 2011 4:04:41 PM (13 years ago)
- Location:
- trunk
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r79498 r79501 1 2011-02-23 Oliver Hunt <oliver@apple.com> 2 3 Roll out r64156 as it introduces incorrect behaviour. 4 5 * canvas/philip/tests/2d.imageData.object.round.html: 6 * fast/canvas/canvas-ImageData-behaviour-expected.txt: 7 * fast/canvas/canvas-ImageData-behaviour.js: 8 * platform/qt/Skipped: 9 1 10 2011-02-23 Mihai Parparita <mihaip@chromium.org> 2 11 -
trunk/LayoutTests/canvas/philip/tests/2d.imageData.object.round.html
r71481 r79501 23 23 _assertSame(imgdata.data[0], 1, "imgdata.data[\""+(0)+"\"]", "1"); 24 24 imgdata.data[0] = 1.5; 25 _assertSame(imgdata.data[0], 1, "imgdata.data[\""+(0)+"\"]", "1");25 _assertSame(imgdata.data[0], 2, "imgdata.data[\""+(0)+"\"]", "2"); 26 26 imgdata.data[0] = 1.501; 27 _assertSame(imgdata.data[0], 1, "imgdata.data[\""+(0)+"\"]", "1");27 _assertSame(imgdata.data[0], 2, "imgdata.data[\""+(0)+"\"]", "2"); 28 28 imgdata.data[0] = 2.5; 29 29 _assertSame(imgdata.data[0], 2, "imgdata.data[\""+(0)+"\"]", "2"); 30 30 imgdata.data[0] = 3.5; 31 _assertSame(imgdata.data[0], 3, "imgdata.data[\""+(0)+"\"]", "3");31 _assertSame(imgdata.data[0], 4, "imgdata.data[\""+(0)+"\"]", "4"); 32 32 imgdata.data[0] = 252.5; 33 33 _assertSame(imgdata.data[0], 252, "imgdata.data[\""+(0)+"\"]", "252"); -
trunk/LayoutTests/fast/canvas/canvas-ImageData-behaviour-expected.txt
r64156 r79501 27 27 PASS imageData.data[0] = false, imageData.data[0] is 0 28 28 PASS imageData.data[0] = "garbage", imageData.data[0] is 0 29 PASS imageData.data[0] = -1, imageData.data[0] is 25529 PASS imageData.data[0] = -1, imageData.data[0] is 0 30 30 PASS imageData.data[0] = "0", imageData.data[0] is 0 31 31 PASS imageData.data[0] = "1", imageData.data[0] is 1 32 32 PASS imageData.data[0] = "2", imageData.data[0] is 2 33 PASS imageData.data[0] = Infinity, imageData.data[0] is 033 PASS imageData.data[0] = Infinity, imageData.data[0] is 255 34 34 PASS imageData.data[0] = -Infinity, imageData.data[0] is 0 35 PASS imageData.data[0] = -5, imageData.data[0] is 25135 PASS imageData.data[0] = -5, imageData.data[0] is 0 36 36 PASS imageData.data[0] = -0.5, imageData.data[0] is 0 37 37 PASS imageData.data[0] = 0, imageData.data[0] is 0 38 PASS imageData.data[0] = 0.5, imageData.data[0] is 038 PASS imageData.data[0] = 0.5, imageData.data[0] is 1 39 39 PASS imageData.data[0] = 5, imageData.data[0] is 5 40 PASS imageData.data[0] = 2147483647, imageData.data[0] is 25541 PASS imageData.data[0] = 2147483648, imageData.data[0] is 042 PASS imageData.data[0] = 2147483649, imageData.data[0] is 143 PASS imageData.data[0] = -1099511627773.5, imageData.data[0] is 344 PASS imageData.data[0] = 9007199254740990, imageData.data[0] is 25445 40 PASS imageData.data[0] = 5.4, imageData.data[0] is 5 46 41 PASS imageData.data[0] = 255, imageData.data[0] is 255 47 PASS imageData.data[0] = 256, imageData.data[0] is 042 PASS imageData.data[0] = 256, imageData.data[0] is 255 48 43 PASS imageData.data[0] = null, imageData.data[0] is 0 49 44 PASS imageData.data[0] = undefined, imageData.data[0] is 0 -
trunk/LayoutTests/fast/canvas/canvas-ImageData-behaviour.js
r64156 r79501 12 12 "\"0\"", "\"1\"", "\"2\"", Infinity, -Infinity, 13 13 -5, -0.5, 0, 0.5, 5, 14 Math.pow(2, 31) - 1, Math.pow(2, 31), Math.pow(2, 31) + 1, -Math.pow(2, 40) + 2.5, Math.pow(2, 53) - 1.5,15 14 5.4, 255, 256, null, undefined]; 16 var testResults = [0, 1, 0, 0, 255, 17 0, 1, 2, 0, 0, 18 251, 0, 0, 0, 5, 19 255, 0, 1, 3, 254, 20 5, 255, 0, 0, 0]; 15 var testResults = [0, 1, 0, 0, 0, 16 0, 1, 2, 255, 0, 17 0, 0, 0, 1, 5, 18 5, 255, 255, 0, 0]; 21 19 for (var i = 0; i < testValues.length; i++) { 22 20 shouldBe("imageData.data[0] = "+testValues[i]+", imageData.data[0]", ""+testResults[i]); -
trunk/LayoutTests/platform/qt/Skipped
r79432 r79501 3193 3193 canvas/philip/tests/2d.imageData.create2.type.html 3194 3194 canvas/philip/tests/2d.imageData.get.type.html 3195 canvas/philip/tests/2d.imageData.object.round.html 3196 canvas/philip/tests/2d.imageData.object.wrap.html 3195 3197 canvas/philip/tests/2d.imageData.put.unchanged.html 3196 3198 canvas/philip/tests/2d.line.cap.open.html -
trunk/Source/JavaScriptCore/ChangeLog
r79492 r79501 1 2011-02-23 Oliver Hunt <oliver@apple.com> 2 3 Roll out r64156 as it introduces incorrect behaviour. 4 5 * runtime/JSByteArray.h: 6 (JSC::JSByteArray::setIndex): 7 1 8 2011-02-23 Geoffrey Garen <ggaren@apple.com> 2 9 -
trunk/Source/JavaScriptCore/runtime/JSByteArray.h
r79132 r79501 48 48 { 49 49 ASSERT(canAccessIndex(i)); 50 if (value & ~0xFF) { 51 if (value < 0) 52 value = 0; 53 else 54 value = 255; 55 } 50 56 m_storage->data()[i] = static_cast<unsigned char>(value); 51 57 } 52 58 53 59 void setIndex(unsigned i, double value) 54 60 { 55 61 ASSERT(canAccessIndex(i)); 56 // The largest integer value that a double can represent without loss of precision 57 // is 2^53. long long is the smallest integral type that gives correct results 58 // when casting numbers larger than 2^31 from a value of type double. 59 m_storage->data()[i] = static_cast<unsigned char>(static_cast<long long>(value)); 62 if (!(value > 0)) // Clamp NaN to 0 63 value = 0; 64 else if (value > 255) 65 value = 255; 66 m_storage->data()[i] = static_cast<unsigned char>(value + 0.5); 60 67 } 61 68 62 69 void setIndex(ExecState* exec, unsigned i, JSValue value) 63 70 { … … 81 88 82 89 static const ClassInfo s_defaultInfo; 83 90 84 91 size_t length() const { return m_storage->length(); } 85 92 … … 102 109 RefPtr<WTF::ByteArray> m_storage; 103 110 }; 104 111 105 112 JSByteArray* asByteArray(JSValue value); 106 113 inline JSByteArray* asByteArray(JSValue value)
Note: See TracChangeset
for help on using the changeset viewer.