Bug С WAS_ERROR при выходе из функции



  • Тестовый скрипт 0_1526832007296_user_fail.xml

    Баг заключается, в том, что если мы вызываем функцию и в ней блоке игнорирования ошибок происходит ошибка, то при возврате из функции переменная WAS_ERROR снова становиться false, при том, что до выхода она была true. Переменная LAST_ERROR остается неизменной как и должна.



  • Для ленивых, наглядно :D
    0_1526832698208_на форум1.gif



  • @Denis_krsk
    Это не баг.
    Так и должно быть. У вас произошла ошибка. Блок ее зафиксировал. Потом в следующем блоке уже ошибки нет.
    По вашей логике 2 подряд блок должны выдавать ошибку если в одном из блоков будет ошибка, что не верно.
    Обрабатывать ошибку нужно сразу после игнора. Если вы хотите что бы вышло из функции при ошибки - сделайте фейл в функции, и игнор ошибок верхний его обработает.
    П.С. Ласт еррор не ощичается, она всегда хранит последнюю ошибку, по этому условия строит на одном ласт еррор нельзя



  • @DrPrime Но я не согласен, что так должно быть. Т.к. В начале каждого блока игнора ошибка WAS_ERROR скидывается в false. Поэтому два таких блока подряд отработают нормально. В любом случае тогда было бы логично и очищать LAST_ERROR



  • Скорее это баг который стал нормой ))



  • @Denis_krsk
    ну тут спорить можно долго.
    Зачем тогда использовать игноры внутри блоков?
    Суть вот в чем
    Например, я у меня есть блок игнор общий и 1 внутри. 1 внутри например для смены логина, общий для остальных ошибок. По твоей логике я не смогу это реализовать, потому что у меня будет срабатывать общий.
    По поводу ласт еррор согласен, к этому уже привыкли)



  • @DrPrime Дак если бы last error обнулялся вопросов бы не было. А так это вводит в заблуждение ((


Log in to reply