freepascal.ru • Просмотр темы - Гы. Уши бага №27221 растут из версий 0.9x
 

Гы. Уши бага №27221 растут из версий 0.9x

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

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

Гы. Уши бага №27221 растут из версий 0.9x

Сообщение Cheb » 08.02.2018 23:56:58

Вот такое вот "мне смертию кость угрожала."

Зачем добавили эту проверку? А низачем, это кривая копипаста из досовского кода когда Windows XP ещё не родилась.
И если посмотреть реальное говно мамонта (0.99.14, йо!), то всё становится ясно:

Код: Выделить всё
Procedure FileClose (Handle : Longint);

begin
  if Handle<=4 then
   exit;
  CloseHandle(Handle);
end;


и

Код: Выделить всё
Procedure FileClose (Handle : Longint);
var Regs: registers;
begin
  if Handle<=4 then
   exit;
Regs.Eax := $3e00;
Regs.Ebx := Handle;
RealIntr($21, Regs);
end;


Похожи, не?
Особенно та пустая строчка доставляет.

Добавлено спустя 17 минут 15 секунд:
Качать https://sourceforge.net/projects/freepa ... M/download
открывать .rpm файлО под виндою можно 7-Zip'ом
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 652
Зарегистрирован: 06.06.2005 15:54:34

Re: Гы. Уши бага №27221 растут из версий 0.9x

Сообщение Сквозняк » 10.02.2018 05:06:42

А что, теперь у открытых программой файлов появилась рукоятка <5?
Сквозняк
энтузиаст
 
Сообщения: 653
Зарегистрирован: 29.06.2006 22:08:32

Re: Гы. Уши бага №27221 растут из версий 0.9x

Сообщение Kemet » 10.02.2018 12:54:33

При закрытии проверять не надо, CreateFile не вернет занятый handle
Kemet
постоялец
 
Сообщения: 232
Зарегистрирован: 10.02.2010 19:28:32
Откуда: Временно оккупированная территория

Re: Гы. Уши бага №27221 растут из версий 0.9x

Сообщение Cheb » 12.02.2018 12:15:25

А что, теперь у открытых программой файлов появилась рукоятка <5?

Если ты свою программу в вайне запускаешь из консоли, строчкой wine myexe.exe, то вполне могут попасться, и помрёт твоя программа резко хряпнувшись бесславно, и сгрызёшь себе все локти ты, гадая, почему.

Так я, собственно , на этот баг и напоролся: тестируя свой игровой движок в вайне.

Мораль: не предполагай, коли в документации не указано. By assuming you make an ass out of you and me.
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 652
Зарегистрирован: 06.06.2005 15:54:34

Re: Гы. Уши бага №27221 растут из версий 0.9x

Сообщение Python » 11.03.2018 18:36:01

Хм... например, у ShellExecute есть такая фишечка, что сравнивать результат надо как <32, если нет желания сравнивать с КАЖДЫМ из возможных кодов ошибок. Так что не везде такой подход является вредным.
Python
новенький
 
Сообщения: 12
Зарегистрирован: 23.01.2018 21:50:17


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

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

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

Рейтинг@Mail.ru