Fixed svg-gradient can cause class not found exception.

Xon

Well-known member
Affected version
2.0.10
I'm retrofitting some Less svg0gradients into an add-on;
Code:
.my-tag {
    background: svg-gradient(to bottom, @xf-paletteNeutral1, @xf-paletteNeutral2 30%, @xf-paletteNeutral2);
}


Exception;
  • Error: Class 'Less_Tree_URL' not found
  • src/vendor/oyejorge/less.php/lib/Less/Functions.php:1002
  • Generated by: Unknown account
  • Oct 13, 2018 at 6:54 AM
Code:
#0 src/vendor/oyejorge/less.php/lib/Less/Tree/Call.php(77): Less_Functions->svggradient(Object(Less_Tree_Expression), Object(Less_Tree_Color), Object(Less_Tree_Expression), Object(Less_Tree_Color))
#1 src/vendor/oyejorge/less.php/lib/Less/Tree/Expression.php(52): Less_Tree_Call->compile(Object(Less_Environment))
#2 src/vendor/oyejorge/less.php/lib/Less/Tree/Value.php(27): Less_Tree_Expression->compile(Object(Less_Environment))
#3 src/vendor/oyejorge/less.php/lib/Less/Tree/Rule.php(75): Less_Tree_Value->compile(Object(Less_Environment))
#4 src/vendor/oyejorge/less.php/lib/Less/Tree/Ruleset.php(94): Less_Tree_Rule->compile(Object(Less_Environment))
#5 src/vendor/oyejorge/less.php/lib/Less/Tree/Ruleset.php(94): Less_Tree_Ruleset->compile(Object(Less_Environment))
#6 src/vendor/oyejorge/less.php/lib/Less/Parser.php(199): Less_Tree_Ruleset->compile(Object(Less_Environment))
#7 src/XF/CssRenderer.php(363): Less_Parser->getCss()
#8 src/XF/CssRenderer.php(311): XF\CssRenderer->renderToCss('public:sv_bbcod...', '// Note that th...')
#9 src/XF/CssRenderer.php(235): XF\CssRenderer->renderTemplate('public:sv_bbcod...', NULL)
#10 src/XF/CssRenderer.php(101): XF\CssRenderer->renderTemplates(Array, Array, Array)
#11 src/XF/CssWriter.php(53): XF\CssRenderer->render(Array)
#12 css.php(30): SV\RedisCache\XF\CssWriter->run(Array, 13, 1, 'a6ac2ff9d09c047...')
#13 {main}

The class Less_Tree_Url exists, but due to case sensitive lookups Less_Tree_URL does not.
 
I've incorporated this into our fork of this repo which we brought into 2.1. I've also now backported our fork into 2.0.12, mostly as it also includes some PHP 7.3 compat fixes. So this should be fixed in 2.0.12 (and the next 2.1 release too).
 
Back
Top Bottom