Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.07;
Скачать: CL | DM;

Вниз

Баг отладчика и побочный эффект с showmessage.   Найти похожие ветки 

 
oxffff ©   (2007-07-26 11:53) [0]

Не буду темнить.

Ковыряясь в исходниках я наткнулся на очень полезные функции.
Назовем их Fast Mem Alloc.
А находятся они здесь Grids и используются там же.

function StackAlloc(Size: Integer): Pointer; register;

StackAlloc allocates a "small" block of memory from the stack

procedure StackFree(P: Pointer); register;
StackFree pops the memory allocated by StackAlloc off the stack.

Вот упрощенный пример использования их функциональности

procedure a1;asm
pop eax;
sub esp,$10;
push eax;
end;

procedure a2;asm
pop eax;
add esp,$10;
push eax;
end;

procedure TForm1.Button1Click(Sender: TObject);
var a,b:integer;
begin
a1;
showmessage(inttostr(b));
showmessage(inttostr(a));
a2;
end;

Поставьте бряк на вызов a1. Запустите приложение и нажмите кнопку.  Далее нажмите на F8.
На showmessage вы не попадаете, хотя должны.Тоже самое на ASM коде при F8 на call a1

Это и есть выявленный недочет отладчика.



Теперь о странном эффекте showmessage


Продолжение здесь
http://delphimaster.net/view/1-1185435238/


 
oxffff ©   (2007-07-26 15:02) [1]

Здесь сообщение о недочете.
http://qc.codegear.com/wc/qcmain.aspx?d=49593


 
oxffff ©   (2007-07-27 08:53) [2]

Отчет получил статус Open.


 
Rouse_ ©   (2007-07-27 11:15) [3]

Дельфя какая? Под 2007 все отрабатывает как надо...


 
oxffff ©   (2007-07-27 11:23) [4]


> Rouse_ ©   (27.07.07 11:15) [3]
> Дельфя какая? Под 2007 все отрабатывает как надо...


Проверял на 7. На 2006 не проверял.

Вот добавление к отчету от sysop

Sysop OF: Reproduced with Delphi 2007.

Осталось выяснить кто прав.


 
Rouse_ ©   (2007-07-27 12:04) [5]

я не прав - не там бряк поставил... :)



Страницы: 1 вся ветка

Текущий архив: 2007.10.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
2-1189236650
NikolayGavrilovM
2007-09-08 11:30
2007.10.07
Записи в массиве


2-1189104290
Надуев Алексей
2007-09-06 22:44
2007.10.07
Image


3-1180593182
DVM
2007-05-31 10:33
2007.10.07
Заполнить BLOB поле в таблице с помощью SQL запроса. Как?


6-1171124986
22b
2007-02-10 19:29
2007.10.07
BackConnect на Delphi помогите плз.....


2-1189577653
Washington
2007-09-12 10:14
2007.10.07
Местоположение формы