[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling
From: |
Greg Chicares |
Subject: |
Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling |
Date: |
Tue, 24 Feb 2009 20:54:33 +0000 |
User-agent: |
Thunderbird 2.0.0.19 (Windows/20081209) |
On 2009-02-24 19:33Z, Vadim Zeitlin wrote:
> On Tue, 24 Feb 2009 15:25:22 +0000 Greg Chicares <address@hidden> wrote:
>
> GC> Run lmi with the argument that we never write in public, in order
> GC> to enable the "Test" menu. Then:
> GC>
> GC> alt-F N I Enter alt-T A F
> GC>
> GC> or, if you please,
> GC>
> GC> File | New | Illustration
> GC> OK
>
> Unfortunately I can't follow the instructions any further because after
> this step I get
[...]
> Table 57 in file './qx_cso': offset -1 is invalid.
> [file .\actuarial_table.cpp, line 275]
The directory that '--data_path' points to must contain
qx_cso.dat
qx_cso.ndx
among other files; I would speculate that it does not.
The following command:
http://lists.nongnu.org/archive/html/lmi/2009-02/msg00058.html
| cd /opt/lmi/data; ../bin/product_files
won't generate those files; you have to get them here:
http://download.savannah.gnu.org/releases-noredirect/lmi/lmi-data-20050618T1440Z.tar.bz2
> Would you already know by chance what is this about? I didn't [try to]
> debug it yet, all I can see is the stack trace which is
>
>> lmi_wx.exe!actuarial_table::find_table() Line 276 + 0x199
I tried adding some diagnostic code slightly upstream from there,
but forgot that I can't see diagnostic messageboxes.
> for the first error and then it crashes in wx code called from inside
> safe_message_alert() because wxDocMDIChildFrame::m_childView is a dangling
> pointer.
>
> There are obviously many bugs in (inter)play here, I see at least:
>
> 0. initial error is probably a bug, although whether it's in lmi_wx or
> in product_files which I used to generate the files is unclear
> 1. safe_message_alert() doesn't seem to be safe
> 2. m_childView shouldn't be left dangling
>
> I'm going to fix (2) and I might look at (1) if you wish
Yes, please. I tried the patch below, after moving my 'qx_cso.*'
files aside to simulate an error, but it still crashed--so I'm
not sure safe_message_alert() is the cause after all, because
AIUI the (patched) code cannot fail without displaying a message.
Index: alert_wx.cpp
===================================================================
RCS file: /sources/lmi/lmi/alert_wx.cpp,v
retrieving revision 1.20
diff -U 3 -r1.20 alert_wx.cpp
--- alert_wx.cpp 31 Dec 2008 21:54:11 -0000 1.20
+++ alert_wx.cpp 24 Feb 2009 20:49:01 -0000
@@ -158,6 +158,7 @@
std::fflush(stderr);
#else // defined LMI_MSW
HWND handle = 0;
+ ::MessageBoxA(handle, message, "Error", MB_OK | MB_ICONSTOP |
MB_TASKMODAL);
if(wxTheApp)
{
wxWindow* top_window = wxTheApp->GetTopWindow();
- [lmi] wxmsw-2.9.0 regression: messagebox doubling, Greg Chicares, 2009/02/24
- Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Vadim Zeitlin, 2009/02/24
- Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling,
Greg Chicares <=
- Re[2]: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Vadim Zeitlin, 2009/02/24
- Message not available
- Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Greg Chicares, 2009/02/24
- Re[2]: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Vadim Zeitlin, 2009/02/25
- Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Greg Chicares, 2009/02/26
- Re[2]: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Vadim Zeitlin, 2009/02/26
- Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Greg Chicares, 2009/02/26
- Re: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Greg Chicares, 2009/02/26
- Re[2]: [lmi] wxmsw-2.9.0 regression: messagebox doubling, Vadim Zeitlin, 2009/02/26
- Re[2]: Input copy ctor (was: [lmi] wxmsw-2.9.0 regression: messagebox doubling), Vadim Zeitlin, 2009/02/26
- [lmi] Re: Input copy ctor, Greg Chicares, 2009/02/26