1. connect to a local mysql server, no db nodes expanded
2. connect to a remote mysql server,open a db node and click on a table to see the structure
3. click the close speedbarbutton to close the remote connection
4. right click a db in the local server
5. click create new table
6. crash - repeated several times
date/time : 2011-06-13, 17:46:47, 703ms
computer name : KLEESERVER
user name : Bill <admin>
registered owner : Bill
operating system : Windows XP Service Pack 3 build 2600
system language : English
system up time : 9 hours 44 minutes
program up time : 52 minutes 18 seconds
processor : AMD Athlon(tm) 64 Processor 3800+
physical memory : 2415/3582 MB (free/total)
free disk space : (C:) 415.72 GB
display mode : 1280x1024, 32 bit
process id : $f50
allocated memory : 13.10 MB
executable : heidisql.exe
exec. date/time : 2011-06-04 12:06
version : 6.0.0.3867
compiled with : Delphi XE
madExcept version : 3.0m beta 1
callstack crc : $c664e309, $17ad8dff, $17ad8dff
exception number : 1
exception class : EAccessViolation
exception message : Access violation at address 00739C0B in module 'heidisql.exe'. Read of address 00000004.
main thread ($334):
00739c0b heidisql.exe dbconnection 785 +1 TConnectionParameters.GetNetTypeGroup
0069bbbb heidisql.exe table_editor 969 +6 TfrmTableEditor.CellEditingAllowed
0069b699 heidisql.exe table_editor 856 +3 TfrmTableEditor.listColumnsBeforeCellPaint
0063727f heidisql.exe VirtualTrees TBaseVirtualTree.DoBeforeCellPaint
0063eb56 heidisql.exe VirtualTrees TBaseVirtualTree.PrepareCell
006467fc heidisql.exe VirtualTrees TBaseVirtualTree.PaintTree
0063df01 heidisql.exe VirtualTrees TBaseVirtualTree.Paint
004f328b heidisql.exe Controls TCustomControl.PaintWindow
004ed9e5 heidisql.exe Controls TWinControl.PaintHandler
004ee1c4 heidisql.exe Controls TWinControl.WMPaint
004f3225 heidisql.exe Controls TCustomControl.WMPaint
00634df5 heidisql.exe VirtualTrees TBaseVirtualTree.WMPaint
0063b1e4 heidisql.exe VirtualTrees TBaseVirtualTree.HandleHotTrack
004e8f68 heidisql.exe Controls TControl.WndProc
004e988e heidisql.exe Controls TControl.WMMouseMove
004e8f68 heidisql.exe Controls TControl.WndProc
004ed82c heidisql.exe Controls TWinControl.WndProc
006407dc heidisql.exe VirtualTrees TBaseVirtualTree.WndProc
004ececc heidisql.exe Controls TWinControl.MainWndProc
004ab73c heidisql.exe Classes StdWndProc
7c90e470 ntdll.dll KiUserCallbackDispatcher
004ecef8 heidisql.exe Controls TWinControl.MainWndProc
7c90e485 ntdll.dll KiUserExceptionDispatcher
0069b699 heidisql.exe table_editor 856 +3 TfrmTableEditor.listColumnsBeforeCellPaint
0063727f heidisql.exe VirtualTrees TBaseVirtualTree.DoBeforeCellPaint
0063eb56 heidisql.exe VirtualTrees TBaseVirtualTree.PrepareCell
006467fc heidisql.exe VirtualTrees TBaseVirtualTree.PaintTree
0063df01 heidisql.exe VirtualTrees TBaseVirtualTree.Paint
004f328b heidisql.exe Controls TCustomControl.PaintWindow
004ed9e5 heidisql.exe Controls TWinControl.PaintHandler
004ee1c4 heidisql.exe Controls TWinControl.WMPaint
004ee1b7 heidisql.exe Controls TWinControl.WMPaint
004f3225 heidisql.exe Controls TCustomControl.WMPaint
00634df5 heidisql.exe VirtualTrees TBaseVirtualTree.WMPaint
004e8f68 heidisql.exe Controls TControl.WndProc
004ed82c heidisql.exe Controls TWinControl.WndProc
006407dc heidisql.exe VirtualTrees TBaseVirtualTree.WndProc
004ececc heidisql.exe Controls TWinControl.MainWndProc
004ab73c heidisql.exe Classes StdWndProc
7c90e470 ntdll.dll KiUserCallbackDispatcher
004ab73c heidisql.exe Classes StdWndProc
7e42a034 USER32.dll CallWindowProcW
004ed92c heidisql.exe Controls TWinControl.DefaultHandler
004e8f68 heidisql.exe Controls TControl.WndProc
004f07a9 heidisql.exe Controls TWinControl.AdjustSize
004eb96e heidisql.exe Controls DoAdjustSize
00405e86 heidisql.exe System 548 +0 @ClassDestroy
0049c9ac heidisql.exe Classes TList.Destroy
004ebbb7 heidisql.exe Controls TWinControl.AlignControl
004e679c heidisql.exe Controls TControl.RequestAlign
004f07a9 heidisql.exe Controls TWinControl.AdjustSize
004eb96e heidisql.exe Controls DoAdjustSize
00405e86 heidisql.exe System 548 +0 @ClassDestroy
0049c9ac heidisql.exe Classes TList.Destroy
004ececc heidisql.exe Controls TWinControl.MainWndProc
004ab73c heidisql.exe Classes StdWndProc
7c90e470 ntdll.dll KiUserCallbackDispatcher
00550d1c heidisql.exe ComCtrls TPageControl.SetActivePage
007ec45f heidisql.exe Main 9238 +3 TMainForm.SetMainTab
007d6a67 heidisql.exe Main 2979 +3 TMainForm.actCreateDBObjectExecute
004ab097 heidisql.exe Classes TBasicAction.Execute
004d7755 heidisql.exe ActnList TContainedAction.Execute
004d8510 heidisql.exe ActnList TCustomAction.Execute
004aaf5b heidisql.exe Classes TBasicActionLink.Execute
00508fb8 heidisql.exe Menus TMenuItem.Click
0050a4cb heidisql.exe Menus TMenu.DispatchCommand
0050b6aa heidisql.exe Menus TPopupList.WndProc
0050b5f9 heidisql.exe Menus TPopupList.MainWndProc
004ab73c heidisql.exe Classes StdWndProc
7e418a0b USER32.dll DispatchMessageW
005874b3 heidisql.exe Forms TApplication.ProcessMessage
005874f6 heidisql.exe Forms TApplication.HandleMessage
00587821 heidisql.exe Forms TApplication.Run
007ff89f heidisql.exe heidisql 66 +16 initialization
repeatable crash
nope, still there 3885. when i start heidi,i have the localhost tree with several dbs. all of the nodes are closed.
1. connect to my remote server which expands and shows the only database i have in it at the moment. the db is highlighted.
2. click the only table i have in the remote db. so now this node in the tree is highlighted and the table structure shows on the right hand pane.
3. click the disconnect button, remote node disappears and highlight is now on localhost node.
4. right click a table node on the localhost, leftclick create and crash.
5. have discovered, the crash only occurs if i had clicked the remote table node ie if i just connect to remote server and close it immediately, no crash.
1. connect to my remote server which expands and shows the only database i have in it at the moment. the db is highlighted.
2. click the only table i have in the remote db. so now this node in the tree is highlighted and the table structure shows on the right hand pane.
3. click the disconnect button, remote node disappears and highlight is now on localhost node.
4. right click a table node on the localhost, leftclick create and crash.
5. have discovered, the crash only occurs if i had clicked the remote table node ie if i just connect to remote server and close it immediately, no crash.
I'm nearly sure this one will be fixed when issue #2471 is fixed. Hopefully soon.
Hi Anse,just to let you know that ver 3895 still has this bug. When the crash occurs, clicking close on madexcept sends it into a loop so it is something in the tree paint procedure which is causing it. Maybe you could have something like
paint(); serr = 'step0', try doabit; serr = 'step1'; domore; serr = 'step2' etc... except showmessage(serr) end. this way i could see how far it gets in the paint procedure before it crashes. in fact, i dont know what youve programmed it in but if is delphi7 then i can troubleshoot it myself if thats any use
paint(); serr = 'step0', try doabit; serr = 'step1'; domore; serr = 'step2' etc... except showmessage(serr) end. this way i could see how far it gets in the paint procedure before it crashes. in fact, i dont know what youve programmed it in but if is delphi7 then i can troubleshoot it myself if thats any use
The problem is the still active table editor with its list of columns, after having disconnected. Then, for a millisecond, a OnPaint event tries to use the old connection to find out if the Unsigned and/or Zerofill attribute is allowed to be checked, which it does by checking whether the connection is MySQL or MSSQL - but the connection is already freed.
Solution will be to destroy any active structur editor (table, view, event, procedure or trigger) on a manual disconnect.
Solution will be to destroy any active structur editor (table, view, event, procedure or trigger) on a manual disconnect.
Code modification/commit
from ansgar.becker,
13 years ago,
revision 6.0.0.3899
Free object editor previously used by a now disconnected session. Fixes an AV described on http://www.heidisql.com/forum.php?t=8686
Please login to leave a reply, or register at first.