mirror of
				https://gitlab.com/freepascal.org/fpc/source.git
				synced 2025-10-31 16:31:36 +01:00 
			
		
		
		
	* fix bug #1604
This commit is contained in:
		
							parent
							
								
									f959a590fe
								
							
						
					
					
						commit
						bad95b49e2
					
				| @ -81,6 +81,7 @@ type | |||||||
|       ST    : PAdvancedStaticText; |       ST    : PAdvancedStaticText; | ||||||
|       KeyST : PColorStaticText; |       KeyST : PColorStaticText; | ||||||
|       constructor Init; |       constructor Init; | ||||||
|  |       destructor Done;virtual; | ||||||
|       procedure   Update; |       procedure   Update; | ||||||
|     end; |     end; | ||||||
| 
 | 
 | ||||||
| @ -514,6 +515,12 @@ begin | |||||||
|   Fillchar(Status,SizeOf(Status),#0); |   Fillchar(Status,SizeOf(Status),#0); | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
|  | destructor TCompilerStatusDialog.Done; | ||||||
|  | begin | ||||||
|  |   if @Self=CompilerStatusDialog then | ||||||
|  |     CompilerStatusDialog:=nil; | ||||||
|  |   Inherited Done; | ||||||
|  | end; | ||||||
| 
 | 
 | ||||||
| procedure TCompilerStatusDialog.Update; | procedure TCompilerStatusDialog.Update; | ||||||
| var | var | ||||||
| @ -860,6 +867,8 @@ begin | |||||||
|   CompilationPhase:=cpCompiling; |   CompilationPhase:=cpCompiling; | ||||||
|   New(CompilerStatusDialog, Init); |   New(CompilerStatusDialog, Init); | ||||||
|   CompilerStatusDialog^.SetState(sfModal,true); |   CompilerStatusDialog^.SetState(sfModal,true); | ||||||
|  |   { disable window closing } | ||||||
|  |   CompilerStatusDialog^.Flags:=CompilerStatusDialog^.Flags and not wfclose; | ||||||
|   Application^.Insert(CompilerStatusDialog); |   Application^.Insert(CompilerStatusDialog); | ||||||
|   CompilerStatusDialog^.Update; |   CompilerStatusDialog^.Update; | ||||||
| { hook compiler output } | { hook compiler output } | ||||||
| @ -1019,16 +1028,22 @@ begin | |||||||
|     else |     else | ||||||
|       CompilationPhase:=cpFailed; |       CompilationPhase:=cpFailed; | ||||||
| { Show end status } | { Show end status } | ||||||
|  |   { reenable window closing } | ||||||
|  |   CompilerStatusDialog^.Flags:=CompilerStatusDialog^.Flags or wfclose; | ||||||
|   CompilerStatusDialog^.Update; |   CompilerStatusDialog^.Update; | ||||||
|  |   CompilerStatusDialog^.ReDraw; | ||||||
|   CompilerStatusDialog^.SetState(sfModal,false); |   CompilerStatusDialog^.SetState(sfModal,false); | ||||||
|   if ((CompilationPhase in[cpAborted,cpDone,cpFailed]) or (ShowStatusOnError)) and (Mode<>cRun) then |   if ((CompilationPhase in[cpAborted,cpDone,cpFailed]) or (ShowStatusOnError)) and (Mode<>cRun) then | ||||||
|    repeat |    repeat | ||||||
|      CompilerStatusDialog^.GetEvent(E); |      CompilerStatusDialog^.GetEvent(E); | ||||||
|      if IsExitEvent(E)=false then |      if IsExitEvent(E)=false then | ||||||
|       CompilerStatusDialog^.HandleEvent(E); |       CompilerStatusDialog^.HandleEvent(E); | ||||||
|    until IsExitEvent(E); |    until IsExitEvent(E) or not assigned(CompilerStatusDialog); | ||||||
|   Application^.Delete(CompilerStatusDialog); |   if assigned(CompilerStatusDialog) then | ||||||
|   Dispose(CompilerStatusDialog, Done); |     begin | ||||||
|  |       Application^.Delete(CompilerStatusDialog); | ||||||
|  |       Dispose(CompilerStatusDialog, Done); | ||||||
|  |     end; | ||||||
|   CompilerStatusDialog:=nil; |   CompilerStatusDialog:=nil; | ||||||
| { end compilation returns true if the messagewindow should be removed } | { end compilation returns true if the messagewindow should be removed } | ||||||
|   if CompilationPhase=cpDone then |   if CompilationPhase=cpDone then | ||||||
| @ -1233,7 +1248,10 @@ end; | |||||||
| end. | end. | ||||||
| { | { | ||||||
|   $Log$ |   $Log$ | ||||||
|   Revision 1.3  2001-09-12 09:25:01  pierre |   Revision 1.4  2001-09-18 11:33:26  pierre | ||||||
|  |    * fix bug 1604 | ||||||
|  | 
 | ||||||
|  |   Revision 1.3  2001/09/12 09:25:01  pierre | ||||||
|    * fix bug 1585 |    * fix bug 1585 | ||||||
| 
 | 
 | ||||||
|   Revision 1.2  2001/08/05 02:01:47  peter |   Revision 1.2  2001/08/05 02:01:47  peter | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 pierre
						pierre