Некоторое время назад (ориентировочно с неделю, может больше) появился следующий глюк: В пункте меню "Справка" пункт "Помощь" превратился вдруг в "Помощьз". Версия с порчей памяти во время исполнения Selta.exe отпадает, т.к. при выводе этой надписи на экран printf'ом непосредственно сразу после CreateWindow для главного окна, строка уже была порченной: "Помощьз". Другими словами ресурс пришивается к экзешнику уже в таком виде (((. Эксперименты с исходником ресурсного файла выявили следующее: 1)Если строковую константу с именем пункта сдвинуть на 1 пробел ("Помощь" ->" Помощь") - глюк не виден 2)Если добавить в конец названия пункта некоторое количество пробелов - глюк рандомно (??? может и нет ))) ) дописывает в конец строки какой-нибудь кириллический символ. 3)Если перед определением всего меню в файле ресурса вставить какой-нибудь фиктивный объект (например очередной STRINGTABLE), то в зависимости от количества строк в объекте портятся рандомно все пункты в "Справка". Причем, уже не только дописывается некий символ в конец строки, но и по середине тоже может влезть. Ситуация очень глупая и пока не понятно откуда такое чудо вообще взялось. Самая вероятная версия - некорректная работа компилятора mingw32msvc-windres. Возможно глюки там появились после добавления патча для перекодировки. Пока некое "решение" принято в виде добавления пробелов в названия всех пунктов "справка", для симметрии ))))
для продвижения данной баги надо скачать последнюю версию mingw и установить её на builder'е. Кто уполномочен это сделать? Виталя? Боря? Люди, надо что-то решать. У нас походу битый компилятор используется, а никто не чешется ((((
Завёл в альтовскую багзиллу https://bugzilla.altlinux.org/show_bug.cgi?id=14876 Женя, может быть вы соберёте новые версии mingw?
Соберу... Вот только непонятно как быть со всеми пакетами сразу... Их стоит пересбрать все или какие-то конкртенно?
Я думаю стоит начать с того пакета, который содержит windres (компилятор ресурсов).
windres находится в пакете i386-mingw32msvc-binutils. Обновить его можно только то Technology Preview: binutils-2.18.50-20080109-2 release. Поскольку в Сизифе сейчас последняя версия. С другой стороны компилятор 3.4.5, на который есть подозрения, тоже последней версии... Пока я остановился на новых i386-mingw32msvc-binutils и i386-mingw32msvc-runtime.
Собраны: http://git.etersoft.ru/people/sin/packages/i386-mingw32msvc-binutils.git/ http://git.etersoft.ru/people/sin/packages/i386-mingw32msvc-runtime.git/ Думаю, что пора налаживать генерацию из git.etersoft пакетов нв сборочном сервере. Сегодня Дима подчистил хвосты у autobuild.... Завтра попытаюсь всё это завести... Пока могу сказать, что сборка пакетов проверена в хешере на текущем сизифе. Думаю, что нужно дальше...
Сборка сделана, результат сложен в /var/ftp/pub/Etersoft/LINUX\@Etersoft: Поставить можно apt'ом: rpm file:/var/ftp/ pub/Etersoft/LINUX@Etersoft/i586 sisyphus rpm file:/var/ftp/ pub/Etersoft/LINUX@Etersoft/noarch sisyphus
Багу считаю не критичной и откладываю ее. Визуально ошибка не наблюдается.
Для тех, кто не пользуется багзиллой или не умеет пользоваться групповым редактированием при поиске, закрываем задачи, которые они должны были принять.