Fix parsing error with url() format with quotes in it
git-svn-id: http://svg-edit.googlecode.com/svn/trunk@1285 eee81c28-f429-11dd-99c0-75d572ba1dddmaster
parent
3eb89914b6
commit
ee393cd933
|
@ -1160,6 +1160,12 @@ function BatchCommand(text) {
|
|||
}
|
||||
}
|
||||
|
||||
// TODO: if element has fill/stroke pointing to a non-local reference, need to remove
|
||||
// the attribute
|
||||
// i.e. <circle fill="url(http://example.com/someEvilFile.svg#foo)" /> or
|
||||
// <circle fill="url('http://example.com/someEvilFile.svg#foo')" /> or
|
||||
// <circle fill='url("http://example.com/someEvilFile.svg#foo")' /> or
|
||||
|
||||
// recurse to children
|
||||
i = node.childNodes.length;
|
||||
while (i--) { sanitizeSvg(node.childNodes.item(i)); }
|
||||
|
@ -1193,15 +1199,34 @@ function BatchCommand(text) {
|
|||
|
||||
$.each(all_els, function(i, el) {
|
||||
var fill = el.getAttribute('fill');
|
||||
if(fill && fill.indexOf('url(#') == 0) {
|
||||
//found gradient
|
||||
grad_uses.push(fill.substring(5,fill.indexOf(')')));
|
||||
if(fill) {
|
||||
// url(#somegrad)
|
||||
if (fill.indexOf('url(#') == 0) {
|
||||
grad_uses.push(fill.substring(5,fill.indexOf(')')));
|
||||
}
|
||||
// url("#somegrad")
|
||||
else if (fill.indexOf('url("#') == 0) {
|
||||
grad_uses.push(fill.substring(6,fill.indexOf('"',7)));
|
||||
}
|
||||
// url('#somegrad')
|
||||
else if (fill.indexOf("url('#)") == 0) {
|
||||
grad_uses.push(fill.substring(6,fill.indexOf("'",7)));
|
||||
}
|
||||
}
|
||||
|
||||
var stroke = el.getAttribute('stroke');
|
||||
if(stroke && stroke.indexOf('url(#') == 0) {
|
||||
//found gradient
|
||||
grad_uses.push(stroke.substring(5,stroke.indexOf(')')));
|
||||
if (stroke) {
|
||||
if (stroke.indexOf('url(#') == 0) {
|
||||
grad_uses.push(stroke.substring(5,stroke.indexOf(')')));
|
||||
}
|
||||
else if (stroke.indexOf('url("#') == 0) {
|
||||
grad_uses.push(stroke.substring(6,stroke.indexOf('"',7)));
|
||||
}
|
||||
// url('#somegrad')
|
||||
else if (stroke.indexOf("url('#)") == 0) {
|
||||
grad_uses.push(stroke.substring(6,stroke.indexOf("'",7)));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// gradients can refer to other gradients
|
||||
|
|
Loading…
Reference in New Issue