Re: Linux QueryBuilder error
От | Dave Page |
---|---|
Тема | Re: Linux QueryBuilder error |
Дата | |
Msg-id | 03AF4E498C591348A42FC93DEA9661B844B121@mail.vale-housing.co.uk обсуждение исходный текст |
Ответ на | Linux QueryBuilder error (Adam H.Pendleton <fmonkey@fmonkey.net>) |
Список | pgadmin-hackers |
Nice catch! Regards, Dave. > -----Original Message----- > From: Adam H.Pendleton [mailto:fmonkey@fmonkey.net] > Sent: 24 June 2003 21:39 > To: pgadmin-hackers@postgresql.org > Subject: [pgadmin-hackers] Linux QueryBuilder error > > > I have tracked down the QueryBuilder error, and it's not a wxWindows > error, per se. The problem lies in the > frmQueryBuilder::OnSize() event > handler. Basically, the QueryBuilder form receives the OnSize event > *before* the form has been created. Here is a thread from the > wxWindows list, discussing a similar problem a user had with > a Windows > application: > http://lists.wxwindows.org/archive/wx-users/msg05277.html Our situation is a bit different, because the code called by frmQueryBuilder::OnSize is wxWindows code, and not custom code, but....here is the problem. In src/generic/laywin.cpp (from wxWindows), the LayoutMDIFrame() function, calls the following code: wxWindow* clientWindow = frame->GetClientWindow(); rect = event.GetRect(); clientWindow->SetSize(rect.x, rect.y, rect.width, rect.height); Basically, frame->GetClientWindow() returns NULL, causing SetSize (which is a macro) to cause a segfault in DoSetSize(clientWindow, etc.). The variable 'frame' is passed to LayoutMDIFrame by our code: LayoutMDIFrame(this). frame->GetClientWindow() is indeed null as frame->m_clientWindow = 0x0. I am looking for a solution to the problem, but I wanted to send it to the list in case someone could fix it faster than I could. ahp
В списке pgadmin-hackers по дате отправления: