I noticed that this fails to support urls that have quotes within it (i.e. in order to escape special characters).
value('svgAttrExpressions', {
FUNC_URI: /^url\((.*)\)$/,
SVG_ELEMENT: /SVG[a-zA-Z]*Element/,
HASH_PART: /#.*/,
QUOTES: /["']/
})
...
var isValidUrlString = angular.isString(fullUrl);
var hasPreQuote = isValidUrlString && svgAttrExpressions.QUOTES.test(fullUrl.charAt(0));
var hasPostQuote = isValidUrlString && svgAttrExpressions.QUOTES.test(fullUrl.charAt(fullUrl.length - 1));
return fullUrl ? 'url(' + (hasPreQuote ? '' : '\"') + fullUrl + (hasPostQuote ? '' : '\"') + ')' : null;