Некорректная работа с CloseGraph
Text Mode Free Pascal IDE with CP866 adaptation (Russian) for Linux
Brought to you by:
alexl000
Ошибка отправлена в апстрим: http://bugs.freepascal.org/view.php?id=25140
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Надо программу, использующую ptcgraph, запустить в консоли (или в IDE), фокус перевести на окно с графикой, закрыть окно с графикой, вернуть фокус в консоль, нажать Enter. Программа зависает, висит в процессах и потребляет процессор.
Last edit: AlexL 2015-09-27
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Лучше не использовать readln http://www.altlinux.org/FreePascal/EgaVgaBGI , а использовать readkey. Но процедура closegraph всё равно виснет при закрытом окне с графикой, и нечем определить закрыто оно или нет. Пока можно обойтись так:
program color256;
uses ptcgraph, PTCCrt;
var
gd,gm:SmallInt;
x,y,i,j,zz,xx:SmallInt;
begin
gd:=D8bit;
gm:=m800x600;
initgraph(gd,gm,'');
for i:=0 to 15 do
for j:=0 to 15 do
begin
x:=i*40;
y:=j*20;
SetfillStyle(SolidFill,i*16+j);
bar(x,y,x+40,y+20);
end;
ReadKey;
if FullscreenGraph=true then closegraph;
end.
Процедура закрытия графического режима больше нужна при полноэкранном режиме - восстановить оригинальное разрешение рабочего стола, цветность, частоту кадров и т. д. А при оконном режиме можно обойтись и без неё.
Last edit: AlexL 2015-09-27
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Апстрим отметил этот баг решенным для FPC 2.6.4.
Требуется проверить.
Last edit: AlexL 2015-09-27
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Проверка показала, что окно с графикой не закрывается. Решено.
Status: Fixed
Last edit: AlexL 2015-09-27