show error message, but do not crash, if --debug-log filename cannot be opened

git-svn-id: trunk@8472 -
This commit is contained in:
vincents 2006-01-08 15:12:16 +00:00
parent 1223f44069
commit 44fc23e4a9

View File

@ -858,25 +858,33 @@ var
end;
begin
DebugText := nil;
DebugFileName := GetDebugFileName;
if (length(DebugFileName)>0) and
(DirPathExists(ExtractFileDir(DebugFileName))) then begin
new(DebugText);
DebugTextAllocated := true;
Assign(DebugText^, DebugFileName);
if FileExists(DebugFileName) then
Append(DebugText^)
else
Rewrite(DebugText^);
end
else begin
try
Assign(DebugText^, DebugFileName);
if FileExists(DebugFileName) then
Append(DebugText^)
else
Rewrite(DebugText^);
except
Freemem(DebugText);
DebugText := nil;
// Add extra line ending: a dialog will be shown in windows gui application
writeln(StdOut, 'Cannot open file: ', DebugFileName+LineEnding);
end;
end;
if DebugText=nil then
begin
if TextRec(Output).Mode=fmClosed then
DebugText := nil
else
DebugText := @Output;
DebugTextAllocated := false;
end;
end else
DebugTextAllocated := true;
end;
procedure FinalizeDebugOutput;