wxPythonOSX-2.5.2.3p.20040722 invalid font assert on SetTitle

File "//Library/Python/2.3/wx/_windows.py", line 354, in SetTitle
     return _windows_.TopLevelWindow_SetTitle(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in /tmp/BUILD/wxPythonSrc-2.5.2.3p.20040722/src/mac/carbon/font.cpp(476): invalid font

It still sets the title, but I always get the assert above with the new build. Of course the exception that is thrown ends up causing any code after the SetTitle to not execute so this build is unusable for me on the Mac and I'll be going back to the last one.

It is late, so I haven't had a chance to look at the Windows version yet.

ka

Kevin Altis wrote:

  File "//Library/Python/2.3/wx/_windows.py", line 354, in SetTitle
    return _windows_.TopLevelWindow_SetTitle(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in /tmp/BUILD/wxPythonSrc-2.5.2.3p.20040722/src/mac/carbon/font.cpp(476): invalid font

It still sets the title, but I always get the assert above with the new build. Of course the exception that is thrown ends up causing any code after the SetTitle to not execute so this build is unusable for me on the Mac and I'll be going back to the last one.

Can you duplicate this in the demo or one of the samples?

SetTitle doesn't use a font, so I'm not sure where this could be coming from. It's possible that it is caused by some prior API call that didn't try to actually use the font until idle time or something, and your SetTitle call was the next thing done and so when it completed the prior exception was detected and raised.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Robin Dunn wrote:

Kevin Altis wrote:

  File "//Library/Python/2.3/wx/_windows.py", line 354, in SetTitle
    return _windows_.TopLevelWindow_SetTitle(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in /tmp/BUILD/wxPythonSrc-2.5.2.3p.20040722/src/mac/carbon/font.cpp(476): invalid font

It still sets the title, but I always get the assert above with the new build. Of course the exception that is thrown ends up causing any code after the SetTitle to not execute so this build is unusable for me on the Mac and I'll be going back to the last one.

Can you duplicate this in the demo or one of the samples?

SetTitle doesn't use a font, so I'm not sure where this could be coming from. It's possible that it is caused by some prior API call that didn't try to actually use the font until idle time or something, and your SetTitle call was the next thing done and so when it completed the prior exception was detected and raised.

BTW, if you call

  wx.GetApp().SetAssertMode(wx.PYAPP_ASSERT_DIALOG)

then the assertion will generate a dialog instead of setting a Python exception. You may be able to better track down where the problem is that way since it seems to be a delayed reaction when using the exception. At the least you should be able to cause an abort from the dialog and then the stack trace will be in the CrashReporter log.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Sigh, okay how's this...

from wxPython import wx

class MyApp(wx.wxApp):

     def OnInit(self):
         frame = wx.wxFrame(None, -1, "minimal", size=(200, 200))
         frame = frame.SetTitle("We're Screwed!")

         frame.Show()
         self.SetTopWindow(frame)
         return True

app = MyApp(0)
app.MainLoop()

[solo:~/python/PythonCard] altis% pythonw ~/Desktop/settitle.py
Traceback (most recent call last):
   File "/Users/altis/Desktop/settitle.py", line 14, in ?
     app = MyApp(0)
   File "//Library/Python/2.3/wx/_core.py", line 5191, in __init__
     self._BootstrapApp()
   File "//Library/Python/2.3/wx/_core.py", line 4879, in _BootstrapApp
     return _core_.PyApp__BootstrapApp(*args, **kwargs)
   File "/Users/altis/Desktop/settitle.py", line 7, in OnInit
     frame = frame.SetTitle("We're Screwed!")
   File "//Library/Python/2.3/wx/_windows.py", line 354, in SetTitle
     return _windows_.TopLevelWindow_SetTitle(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in /tmp/BUILD/wxPythonSrc-2.5.2.3p.20040722/src/mac/carbon/font.cpp(476): invalid font

ka

···

On Jul 23, 2004, at 9:02 AM, Robin Dunn wrote:

Kevin Altis wrote:

  File "//Library/Python/2.3/wx/_windows.py", line 354, in SetTitle
    return _windows_.TopLevelWindow_SetTitle(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in /tmp/BUILD/wxPythonSrc-2.5.2.3p.20040722/src/mac/carbon/font.cpp(476): invalid font
It still sets the title, but I always get the assert above with the new build. Of course the exception that is thrown ends up causing any code after the SetTitle to not execute so this build is unusable for me on the Mac and I'll be going back to the last one.

Can you duplicate this in the demo or one of the samples?

SetTitle doesn't use a font, so I'm not sure where this could be coming from. It's possible that it is caused by some prior API call that didn't try to actually use the font until idle time or something, and your SetTitle call was the next thing done and so when it completed the prior exception was detected and raised.

Kevin Altis wrote:

Sigh, okay how's this...

Sorry for my confusion, I was thinking that the title set from the constructor should have done the same thing.

It's fixed now, the font was being used to determine the encoding to use.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!