bug:
when clearing the query log, the first line is not indexed by number 1 again but by last row number + 1.
reproduction:
i think thats obvious ;)
solution:
simply reset the counter for row numbers?
2.)
bug:
when update tries to restart heidi, and there are unsaved query tab/database objects existing, you are asked whether saving these or not.
this question, however, pop ups every second. consequently there's barely time to realy save everything as the next pop up would bring the save dialog to the background anyway. the only way to exit this loop is to deny or to cancel this dialog.
solution:
as i see it, the heidisql_updater.exe polls the actual heidisql.exe for closing every second in order to report possible timeouts etc. this obviously causes the main form to fire the closequery event as frequently.
--> moving code for checking for unsaved queries/objects to seperate function (lets say CheckUnsaved) and call it in this special case before executing the updater. the CheckUnsaved function itself checks some boolean variable indicating whether update proccess is running so that further message boxes are not popping up.
here's some example code (as i think my description could confuse a little bit

----------------------------------
var IsUpdating: Boolean;
function CheckUnsaved: Boolean;
begin
...
end;
procedure TMainForm.CloseQuery;
begin
if not IsUpdating then
CanClose := CheckUnsaved;
end;
// procedure which calls the _updater.exe; didn't look up its
//exact name in the source
procedure Update;
begin
CheckUnsaved;
IsUpdating := True;
Execeute('HeidiSQL_updater.exe');
// enable checking for the closequery event again in case of
// any errors
IsUpdating := False;
end;
----------------------------------
i hope my report helps :D