svnno****@sourc*****
svnno****@sourc*****
2010年 11月 12日 (金) 20:55:45 JST
Revision: 2137
http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=2137
Author: dhrname
Date: 2010-11-12 20:55:45 +0900 (Fri, 12 Nov 2010)
Log Message:
-----------
Test Suiteの「paths-data-12-t」をパスできるように、path要素のS,sコマンドのバグを修正
Modified Paths:
--------------
branches/06x/063/org/w3c/dom/svg.js
Modified: branches/06x/063/org/w3c/dom/svg.js
===================================================================
--- branches/06x/063/org/w3c/dom/svg.js 2010-11-11 14:46:59 UTC (rev 2136)
+++ branches/06x/063/org/w3c/dom/svg.js 2010-11-12 11:55:45 UTC (rev 2137)
@@ -2294,6 +2294,10 @@
*SVG1.1 「8.3.9 The grammar for path data」の項目にある最後の文章を参照
*/
var tnl = tar.normalizedPathSegList, tlist = tar.pathSegList, D = [], _parseFloat = parseFloat;
+ if (tnl.numberOfItems > 0) {
+ tnl.clear();
+ tlist.clear();
+ }
/*d属性の値を正規表現を用いて、二次元配列Dに変換している。もし、d属性の値が"M 20 30 L20 40"ならば、
*JSONにおける表現は以下のとおり
*D = [["M", 20, 30], ["L", 20 40]]
@@ -2511,9 +2515,11 @@
var x1 = 2*tg.x - tg.x2;
var y1 = 2*tg.y - tg.y2;
} else {
- var x1 = ti.x2, y1 = ti.y2;
+ var x1 = rx, y1 = ry;
}
tnl.appendItem(tar.createSVGPathSegCurvetoCubicAbs(cx, cy, x1, y1, ti.x2, ti.y2));
+ } else {
+
}
} else if (dii === "s") {
if (j !== 0) {
@@ -2522,7 +2528,7 @@
var x1 = 2*tg.x - tg.x2;
var y1 = 2*tg.y - tg.y2;
} else {
- var x1 = ti.x2, y1 = ti.y2;
+ var x1 = rx, y1 = ry;
}
tnl.appendItem(tar.createSVGPathSegCurvetoCubicAbs(cx, cy, x1, y1, ti.x2+rx, ti.y2+ry));
}
@@ -4777,7 +4783,7 @@
var ttr = tar.targetElement, tta = ttr[attrName];
var vir = ttr.cloneNode(false), vta = vir[attrName];
tar._frame = function() {
- var d = tar.getSimpleDuration(), n = tar._values.length - 1;
+ var d = tar.getSimpleDuration(), n = tar._valueList.length - 1;
if ((n !== -1) && (d !== 0)) {
var ntd = n / d;
} else {