IDE: output filter: fixed storing absolute filename

git-svn-id: trunk@23814 -
This commit is contained in:
mattias 2010-03-01 23:01:49 +00:00
parent cee2c094a7
commit 304c5206cd
3 changed files with 8 additions and 6 deletions

View File

@ -3133,7 +3133,7 @@ var
Caret: TPoint;
begin
if Step=imqfoMenuItem then begin
DebugLn(['TQuickFixIdentifierNotFound_Search.Execute ']);
DebugLn(['TQuickFixIdentifierNotFound_Search.Execute Dir=',Msg.Directory,' Msg=',Msg.Msg,' Filename=',Msg.Parts.Values['Filename']]);
// get source position
// (FPC reports position right after the unknown identifier
// for example right after FilenameIsAbsolute)

View File

@ -143,9 +143,9 @@ begin
Filename:=Msg.Parts.Values['Filename'];
TestDir:=LazarusIDE.GetTestBuildDirectory;
if (TestDir<>'') or (FileIsInDirectory(Filename,TestDir)) then
Filename:=ExtractFileName(Filename);
if not FilenameIsAbsolute(Filename) then
if (TestDir<>'') and (FileIsInDirectory(Filename,TestDir)) then
Filename:=ExtractFileName(Filename)
else if not FilenameIsAbsolute(Filename) then
Filename:=AppendPathDelim(Msg.Directory)+Filename;
//DebugLn('GetMsgLineFilename Filename=',Filename,' ',Msg.Parts.Text);
@ -530,12 +530,13 @@ var
NewX, NewY, NewTopLine: integer;
begin
if Step=imqfoMenuItem then begin
DebugLn(['TQuickFixIdentifierNotFoundAddLocal.Execute ']);
DebugLn(['TQuickFixIdentifierNotFoundAddLocal.Execute Dir=',Msg.Directory,' Msg=',Msg.Msg]);
// get source position
// (FPC reports position right after the unknown identifier
// for example right after FilenameIsAbsolute)
if not GetMsgLineFilename(Msg,CodeBuf) then exit;
Msg.GetSourcePosition(Filename,Caret.Y,Caret.X);
if not LazarusIDE.BeginCodeTools then begin
DebugLn(['TQuickFixIdentifierNotFoundAddLocal.Execute failed because IDE busy']);
exit;

View File

@ -984,9 +984,10 @@ begin
Filename:=copy(Msg,1,FilenameEndPos);
if FilenameIsAbsolute(Filename) then begin
AbsFilename:=Filename;
CurrentMessageParts.Values['Filename']:=AbsFilename;
end else begin
AbsFilename:=TrimFilename(fCurrentDirectory+Filename);
if not FileExistsUTF8(AbsFilename) then begin
if not FileExistsCached(AbsFilename) then begin
AbsFilename:='';
end;
end;