Permalink
Browse files

Silence rare crash when calculating current query duration. Closes #490.

  • Loading branch information...
ansgarbecker committed Jan 19, 2019
1 parent 993d654 commit b3c676d75215f6efc97b2bb867f9b019b3c3d05e
Showing with 3 additions and 2 deletions.
  1. +3 −2 source/main.pas
@@ -12773,13 +12773,14 @@ procedure TQueryTab.TimerStatusUpdateOnTimer(Sender: TObject);
Msg := _('query')+' #' + FormatNumber(ExecutionThread.BatchPosition+1);
if ExecutionThread.QueriesInPacket > 1 then
Msg := f_('queries #%s to #%s', [FormatNumber(ExecutionThread.BatchPosition+1), FormatNumber(ExecutionThread.BatchPosition+ExecutionThread.QueriesInPacket)]);
Elapsed := MilliSecondsBetween(ExecutionThread.QueryStartedAt, Now);
ElapsedMsg := FormatTimeNumber(Elapsed/1000, True);
try
Elapsed := MilliSecondsBetween(ExecutionThread.QueryStartedAt, Now);
ElapsedMsg := FormatTimeNumber(Elapsed/1000, True);
MainForm.ShowStatusMsg(ElapsedMsg + ': ' + f_('Executing %s of %s ...', [Msg, FormatNumber(ExecutionThread.Batch.Count)]));
except;
// Some crashes here, probably when accessing the no longer running thread.
// See https://www.heidisql.com/forum.php?t=25418#p25484
// See issue https://github.com/HeidiSQL/HeidiSQL/issues/490
end;
end;

0 comments on commit b3c676d

Please sign in to comment.