access violation using wxTreeCtrl
Vadim Zeitlin
vadim at wxwidgets.org
Wed Mar 12 12:56:22 PDT 2008
On Wed, 05 Mar 2008 09:39:27 +0100 Harry <"harry dot news at armadillo dot fr"@a.mx.sunsite.dk> wrote:
H> Using Visual Studio 2005 and daily build wxMSW-2008-03-04, I don't get
H> the assertions,
H> but I still get the abort:
H> Unhandled exception at 0x74cdc1f4 in treectrl.exe: 0xC0000005: Access
H> violation reading location 0xfeeeff0a.
Are you using Vista by chance? There was a discussion on wx-dev recently
about a crash which only happens under this OS (and only in multiselection
mode). The backtrace is not nearly the same though... Please have a look at
http://thread.gmane.org/gmane.comp.lib.wxwidgets.devel/98918 and the patch
referenced there: does applying it help?
H> It seems to me like wxTreeCtrl::DeleteAllItems() is trying to delete
H> already-deleted items.
Hmm, do you have any specific reasons for thinking this? I don't really
see them...
H> The stack trace is as follows:
H>
H> comctl32.dll!74cdc1f4()
H> [snip]
H> user32.dll!76272d14()
H> > treectrl.exe!wxWindow::MSWDefWindowProc(unsigned int nMsg=4353,
H> unsigned int wParam=0, long lParam=-65536) Line 2258 + 0x25 bytes C++
H> treectrl.exe!wxTreeCtrl::MSWDefWindowProc(unsigned int nMsg=4353,
H> unsigned int wParam=0, long lParam=-65536) Line 2450 C++
H> treectrl.exe!wxWindow::MSWWindowProc(unsigned int message=4353,
H> unsigned int wParam=0, long lParam=-65536) Line 3508 + 0x22 bytes C++
H> treectrl.exe!wxTreeCtrl::MSWWindowProc(unsigned int nMsg=4353,
H> unsigned int wParam=0, long lParam=-65536) Line 2412 + 0x17 bytes C++
H> treectrl.exe!wxWndProc(HWND__ * hWnd=0x000307e2, unsigned int
H> message=4353, unsigned int wParam=0, long lParam=-65536) Line 2669 +
H> 0x1c bytes C++
H> user32.dll!76271a10()
H> [snip]
H> treectrl.exe!wxTreeCtrl::DeleteAllItems() Line 1630 + 0x1b
H> bytes C++
H> treectrl.exe!wxTreeCtrl::~wxTreeCtrl() Line 808 C++
DeleteAllItems() is called and it sends TVM_DELETEITEM to the control
(this is the message 4353) and I don't understand why would the items be
already deleted.
BTW, in the 2nd post in the above thread I wrote about how to get symbols
for the frames in user32.dll and comctl32.dll, please see the first
paragraph of http://article.gmane.org/gmane.comp.lib.wxwidgets.devel/98926
Could you please set your _NT_SYMBOL_PATH and show the backtrace with the
symbols? This might give some more information as right now I really don't
have any idea about what to do with this.
Thanks!
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
More information about the wx-users
mailing list