Curt Hibbs
2004-Jan-07 08:18 UTC
[Wxruby-users] Another Updated - wxRubyWindowsinstalleravailablefor
Robert McGovern wrote:> > Just to let you know Curt the new debug build works perfectly for me ... > well nearly.Thanks for the confirmation.> Trying to run the controls.rbw example generates an error dialog > > "Debug" > > "E:\dev\RubyDev\wx\src\common\ctrlsub.cpp(120): assert > "m_clientDataItemsType == wxClientData_Void" failed: this window doesn''t > have void client data > > Do you want to stop the program? > You can also choose [Cancel] to suppress further warnings > > YES / NO / CANCEL > " > If you hit NO a few times (4 to be exact) the Controls Windows App > starts up and appears to all be there and work, its log window shows the > error text that was in the dialogs.Yes, this is (currently) the expected behavior under the debug build. It should probably be cleaned up sometime. Curt
Kevin Smith
2004-Mar-29 23:18 UTC
[Wxruby-users] assert "m_clientDataItemsType == wxClientData_Void" failed
Curt Hibbs wrote:> Robert McGovern wrote:I was going through old email, and found this:>>Trying to run the controls.rbw example generates an error dialog >> >>"Debug" >> >>"E:\dev\RubyDev\wx\src\common\ctrlsub.cpp(120): assert >>"m_clientDataItemsType == wxClientData_Void" failed: this window doesn''t >>have void client data >> >>Do you want to stop the program? >>You can also choose [Cancel] to suppress further warnings >> >>YES / NO / CANCEL >>" >>If you hit NO a few times (4 to be exact) the Controls Windows App >>starts up and appears to all be there and work, its log window shows the >>error text that was in the dialogs. > > Yes, this is (currently) the expected behavior under the debug build. It > should probably be cleaned up sometime.Does this still happen? If so, I would like to try to fix it. I''m hoping it was solved by the other debug-assert related fix I made several months ago. Thanks, Kevin
Curt Hibbs
2004-Mar-29 23:28 UTC
[Wxruby-users] assert "m_clientDataItemsType == wxClientData_Void"failed
Kevin Smith wrote:> > Curt Hibbs wrote: > > Robert McGovern wrote: > > I was going through old email, and found this: > > >>Trying to run the controls.rbw example generates an error dialog > >> > >>"Debug" > >> > >>"E:\dev\RubyDev\wx\src\common\ctrlsub.cpp(120): assert > >>"m_clientDataItemsType == wxClientData_Void" failed: this window doesn''t > >>have void client data > >> > >>Do you want to stop the program? > >>You can also choose [Cancel] to suppress further warnings > >> > >>YES / NO / CANCEL > >>" > >>If you hit NO a few times (4 to be exact) the Controls Windows App > >>starts up and appears to all be there and work, its log window shows the > >>error text that was in the dialogs. > > > > Yes, this is (currently) the expected behavior under the debug build. It > > should probably be cleaned up sometime. > > Does this still happen? If so, I would like to try to fix it. I''m hoping > it was solved by the other debug-assert related fix I made several > months ago.I just tried it, and its still there (the text is still exactly what was reported above). Other than clicking on NO four times (or CANCEL once), it operates completely normally. Curt
Kevin Smith
2004-Mar-30 00:49 UTC
[Wxruby-users] assert "m_clientDataItemsType == wxClientData_Void"failed
Curt Hibbs wrote:>>>>Trying to run the controls.rbw example generates an error dialog >>>> >>>>"Debug" >>>> >>>>"E:\dev\RubyDev\wx\src\common\ctrlsub.cpp(120): assert >>>>"m_clientDataItemsType == wxClientData_Void" failed: this window doesn''t >>>>have void client data> I just tried it, and its still there (the text is still exactly what was > reported above). Other than clicking on NO four times (or CANCEL once), it > operates completely normally.Ugh! This problem as reported shouldn''t be too hard to fix, but it exposed a bigger problem that needs to be fixed first: The current implementation of get_client_data and set_client_data passes a ruby object to C++ but doesn''t hold a reference to it, so that data can be released during the next garbage collection. Essentially, any program that calls set_client_data could segfault or behave randomly when get_client_data is called. I have added a bug to the rubyforge tracker system for this. It will probably have to wait until after the sweeping memory handling changes have been made. Thanks to Robert McGovern for the original problem report. Kevin