Автокликер Clickermann :: Форум

Основной раздел => Ошибки => Архив => Topic started by: i0 on April 07, 2016, 07:36:06 PM

Title: SWITCH без CASE сжирает всю память
Post by: i0 on April 07, 2016, 07:36:06 PM
если написать (и применить) или открыть скрипт со SWITCH без единого CASE, кликерман превращается в Pac-Man съест всё доступную память

Code: (clickermann) [Select]
SWITCH($i)
//CASE(0)
//
DEFAULT
//
END_SWITCH
cmann (4.11, 4.12b), win xp 32
Title: Re: SWITCH без CASE сжирает всю память
Post by: Кликермен on April 07, 2016, 11:21:53 PM
хм, ну он будет без конца прогонять этот скрипт. а нафига тебе пустои кеис?
Title: Re: SWITCH без CASE сжирает всю память
Post by: i0 on April 08, 2016, 06:33:52 AM
был не пустой switch в рабочем скрипте (это не всё, ессно). закомментил в целях отладки всё кроме дефолта и обнаружил
Title: Re: SWITCH без CASE сжирает всю память
Post by: Vint on April 08, 2016, 08:07:24 AM
Забавно, но не смертельно. Тем более не предусмотрено использование неполных конструкций.
Это как закомментить END_THREAD, а начало потока оставить, да ещё возможно и не одного.
Куда кликер забредёт по лабиринтам (линейной  ;D) памяти одному богу известно.
Я при тестах комменчу без оставления мусора.
Title: Re: SWITCH без CASE сжирает всю память
Post by: i0 on April 08, 2016, 08:32:20 AM
ну понятно, что не смертельно
забава в том что для достижения эффекта даже выполнять не надо. только открыть

оставлю себе такой комплектик кликер+скрипт для создания тестовой среды :)
Title: Re: SWITCH без CASE сжирает всю память
Post by: Vint on April 08, 2016, 08:39:35 AM
ну понятно, что не смертельно
забава в том что для достижения эффекта даже выполнять не надо. только открыть

оставлю себе такой комплектик кликер+скрипт для создания тестовой среды :)

Так это блин полезная штука!
Разбрасываешь по скрипту проверки на оригинальность кода, ключи проверяешь и т.п. и при несовпадении не просто закрываешь скрипт, а инклюдиш скрипт с пустым свичем и вуаля. Не у многих хватит терпения в таком случае выискивать все места проверок.


P.S. А нет... не сложно. Но только если знаешь что искать.
Title: Re: SWITCH без CASE сжирает всю память
Post by: i0 on April 08, 2016, 09:02:26 AM
при несовпадении ... инклюдиш скрипт с пустым свичем и вуаля
условный инклюд? а это как реализовать?
Title: Re: SWITCH без CASE сжирает всю память
Post by: Vint on April 08, 2016, 09:14:24 AM
при несовпадении ... инклюдиш скрипт с пустым свичем и вуаля
условный инклюд? а это как реализовать?

Обычно в условие...
А какая разница что так плохо, неправильно и не со всем кодом сработает, если мы это делаем не для работы, а для поломки. Тем более у нас в инклюде нет подпрограмм, а значит его можно сунуть в любое место.
Title: Re: SWITCH без CASE сжирает всю память
Post by: i0 on April 08, 2016, 09:16:47 AM
инклюд обрабатывается на уровне препоцессора же. т.е. скрипт будет съедать всю память безусловно
Title: Re: SWITCH без CASE сжирает всю память
Post by: Vint on April 08, 2016, 09:20:05 AM
А, ну да, ну да... А лоад ещё не выпилили? Тогда в него.
Title: Re: SWITCH без CASE сжирает всю память
Post by: i0 on April 08, 2016, 09:35:34 AM
не выпилили, работает как и хотелось
shitch без case – это не баг, это фича
Title: Re: SWITCH без CASE сжирает всю память
Post by: Vint on April 08, 2016, 10:12:22 AM
 ;D
Title: Re: SWITCH без CASE сжирает всю память
Post by: i0 on April 08, 2016, 10:26:15 PM
чтоб горячие клавиши не работали ... и курсор в лву экрана
я использую doblock.exe, могу поделиться
но тут он не сработает, жжжжаль
Title: Re: SWITCH без CASE сжирает всю память
Post by: Vint on April 11, 2016, 09:44:36 AM
хакеры! ;D Ещё клавишу зажать, чтоб горячие клавиши не работали и запустить бесконечный цикл , без задержек помещающий курсор в лву экрана. Вот тогда народ поймёт, что могло быть и хуже и это только предупреждение, а не форматирование диска. 8)
Вопрос не в том чтобы не дать работать. Можно так и просто комп ребутнуть. Вот пусть оно работает, но всё хуже и хуже... и тихо умрёт вместе со всем.
Надежда на то, чо конструкция стандартная, а не в коде спец MOVE в цикле. Не бросается в глаза.