Merge branch 'master' into 63_functions_on_expressions
diff --git a/player/js/utils/expressions/EffectInterface.js b/player/js/utils/expressions/EffectInterface.js
index 770c0e0..b2b8f7b 100644
--- a/player/js/utils/expressions/EffectInterface.js
+++ b/player/js/utils/expressions/EffectInterface.js
@@ -14,7 +14,7 @@
}
return function(name){
- var effects = elem.data.ef, i = 0, len = effects.length;
+ var effects = elem.data.ef || [], i = 0, len = effects.length;
while(i<len) {
if(name === effects[i].nm || name === effects[i].mn || name === effects[i].ix){
return effectElements[i];
diff --git a/player/js/utils/expressions/ExpressionManager.js b/player/js/utils/expressions/ExpressionManager.js
index d549118..cecce4e 100644
--- a/player/js/utils/expressions/ExpressionManager.js
+++ b/player/js/utils/expressions/ExpressionManager.js
@@ -352,6 +352,13 @@
var height = elem.data.sh ? elem.data.sh : 0;
var loopIn, loop_in, loopOut, loop_out;
var toWorld,fromWorld,fromComp,fromCompToSurface,anchorPoint,thisLayer,thisComp,mask,valueAtTime,velocityAtTime;
+ var __expression_functions = [];
+ if(data.xf) {
+ var i, len = data.xf.length;
+ for(i = 0; i < len; i += 1) {
+ __expression_functions[i] = eval('(function(){ return ' + data.xf[i] + '}())');
+ }
+ }
var scoped_bm_rt;
var expression_function = eval('[function _expression_function(){' + val+';scoped_bm_rt=$bm_rt}' + ']')[0];