winwidestringalloc приводит к исключениям

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

winwidestringalloc приводит к исключениям

Сообщение Cheb » 07.11.2013 23:33:43

Начиная с FPC 2.6, моя программа стала выдавать AV при завершении. Долгая, нудная охота (даже работу с thread'ами переписал частично) вывела на главного виновника: winwidestringalloc:= false которая у меня была со времён царя Гороха.

Падало при завершении программмы (то есть на end.) или при вызове Halt() и даже TerminateProcess()

Бектрейс (у меня вставлены собственные расширения BackTraceStrFunc ) иногда указывал аж внутрь ntdll.dll, проходя до этого по цепочке адресов, для которых не было dwarf2 отладочной информации (т.е. по стандартным юнитам Паскаля).

Вот и думаю теперь: это RTL кривой, или флаг этот такой устаревший, что про него все забыли и не поддерживают, или я в свой программе что-то такое... страшное со строками делаю?

Дальше искать нету сил, там за многие годы наслоения кода в многие и многие тысячи строк накопились, в некоторые места я лет 10 не лазил, чтобы не испачкаться в паутине.

Чистая
Код: Выделить всё
program test;
uses sysutils, windows;
begin
  winwidestringalloc:= false;
end.

не падает. :(
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 994
Зарегистрирован: 06.06.2005 15:54:34

Re: winwidestringalloc приводит к исключениям

Сообщение Sergei I. Gorelkin » 08.11.2013 10:11:26

Этот флаг действительно пора убрать уже очень давно - с момента появления типа UnicodeString.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1407
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: winwidestringalloc приводит к исключениям

Сообщение Павел Ишенин » 10.01.2014 19:11:47

Ух. Столько раз глядел на код и ни разу не обратил внимание на этот флаг. То что его нужно убрать поддерживаю.
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

Рейтинг@Mail.ru