@warenuk said in Баг связанный с функцией ELSE:
Происходит это уже раз 5-тый в этой обнове. Всё работает нормально, скрипт выполняется сотни раз в том же месте и в определенный момент появляется такая ошибка
Есть такая ошибка в рекурсии

Стек вызова запоминает из какой функции вызывалась каждая другая функция, даже в случае рекурсии. По возвращении пытается завершить начатую функцию, возвращаясь в условие проходит else и удаляет переменную условия для else, возвращаясь в это же условие второй раз не может выполнить else, так как действие в предыдущий раз удалило переменную:
section_start("", 899064356)!
IF_ELSE_EXPRESSION_845013 = VAR_NEW_VARIABLE < 5;
_if(IF_ELSE_EXPRESSION_845013,function(){
section_insert()
section_start("", 129017719)!
_call(toster,null)!
section_end()!
})!
section_end()!
section_start("\u007b\u0022n\u0022:\u0022Else\u0022\u007d", 83727063)!
_if(!IF_ELSE_EXPRESSION_845013,function(){
section_insert()
section_start("", 972370824)!
_call(ne_toster,null)!
section_end()!
})!
delete IF_ELSE_EXPRESSION_845013; //после прохода else удаляется переменная
section_end()!
Вот тестовый скрипт
Если мы не будем удалять переменную else, то скрипт отработает все else равным количеству циклов рекурсии
section_start("", 899064356)!
IF_ELSE_EXPRESSION_845013 = VAR_NEW_VARIABLE < 5;
_if(IF_ELSE_EXPRESSION_845013,function(){
section_insert()
section_start("", 129017719)!
_call(toster,null)!
section_end()!
})!
section_end()!
section_start("\u007b\u0022n\u0022:\u0022Else\u0022\u007d", 83727063)!
_if(!IF_ELSE_EXPRESSION_845013,function(){
section_insert()
section_start("", 972370824)!
_call(ne_toster,null)!
section_end()!
})!
//delete IF_ELSE_EXPRESSION_845013; заэкранировали удаление переменной
section_end()!

Вот тестовый скрипт
Лечится простым использованием второго условия, противоположному первому, вместо else.

Вот тестовый скрипт
Ошибка старая, но на всякий случай продублировал @support 'у