[MacPorts] #67280: gtk3: Crash when typing text with gtk3 on ARM mac

MacPorts noreply at macports.org
Fri Apr 21 14:15:23 UTC 2023


#67280: gtk3: Crash when typing text with gtk3 on ARM mac
-----------------------+--------------------
 Reporter:  Akkiesoft  |      Owner:  (none)
     Type:  defect     |     Status:  new
 Priority:  Normal     |  Milestone:
Component:  ports      |    Version:
 Keywords:             |       Port:  gtk3
-----------------------+--------------------
 On M1 Mac mini and Ventura 13.3.1, when I start a gtk3 application and
 type text in the Entry widget, the application crashes.

 I tested with ruby-gnome, pygtk and C code.

 * C: https://gist.github.com/Akkiesoft/4b7b7f438f1bfba82aada0add8f183b0
 * Python:
 https://gist.github.com/Akkiesoft/071d3cd9d416b69e3307f787a633d97b
 * Ruby: https://gist.github.com/Akkiesoft/90b2cc9c45263db173cc5fc434ba06e6

 I don't think it is a specific language issue, as all of the codes produce
 the same output on crash.

 {{{
 % ./gtk-test
 dbus[16476]: Dynamic session lookup supported but failed: launchd did not
 provide a socket path, verify that org.freedesktop.dbus-session.plist is
 loaded!

 (gtk-test:16476): Gdk-ERROR **: 23:04:56.893: The program 'gtk-test'
 received an X Window System error.
 This probably reflects a bug in the program.
 The error was 'BadLength (poly request too large or internal Xlib length
 erro'.
   (Details: serial 287 error_code 16 request_code 72 (core protocol)
 minor_code 0)
   (Note to programmers: normally, X errors are reported asynchronously;
    that is, you will receive the error a while after causing it.
    To debug your program, run it with the GDK_SYNCHRONIZE environment
    variable to change this behavior. You can then get a meaningful
    backtrace from your debugger if you break on the gdk_x_error()
 function.)
 zsh: trace trap  ./gtk-test
 }}}

 {{{
 % python3 pygtk-entry-test.py
 dbus[16448]: Dynamic session lookup supported but failed: launchd did not
 provide a socket path, verify that org.freedesktop.dbus-session.plist is
 loaded!

 (gtk_test.py:16448): Gdk-ERROR **: 23:03:09.973: The program 'gtk_test.py'
 received an X Window System error.
 This probably reflects a bug in the program.
 The error was 'BadLength (poly request too large or internal Xlib length
 erro'.
   (Details: serial 287 error_code 16 request_code 72 (core protocol)
 minor_code 0)
   (Note to programmers: normally, X errors are reported asynchronously;
    that is, you will receive the error a while after causing it.
    To debug your program, run it with the GDK_SYNCHRONIZE environment
    variable to change this behavior. You can then get a meaningful
    backtrace from your debugger if you break on the gdk_x_error()
 function.)
 zsh: trace trap  python3 pygtk-entry-test.py
 }}}

 {{{
 % ruby ruby-gnome-entry-test.rb
 dbus[16425]: Dynamic session lookup supported but failed: launchd did not
 provide a socket path, verify that org.freedesktop.dbus-session.plist is
 loaded!

 (bb.rb:16425): Gdk-ERROR **: 23:00:33.553: The program 'bb.rb' received an
 X Window System error.
 This probably reflects a bug in the program.
 The error was 'BadLength (poly request too large or internal Xlib length
 erro'.
   (Details: serial 283 error_code 16 request_code 72 (core protocol)
 minor_code 0)
   (Note to programmers: normally, X errors are reported asynchronously;
    that is, you will receive the error a while after causing it.
    To debug your program, run it with the GDK_SYNCHRONIZE environment
    variable to change this behavior. You can then get a meaningful
    backtrace from your debugger if you break on the gdk_x_error()
 function.)
 zsh: trace trap  ruby ruby-gnome-entry-test.rb
 }}}

 Only Python showed mac OS report screen on crash.

 https://gist.github.com/Akkiesoft/8a1acd6dcb5af4b2812ff6849a7f634b

 I am using XQuartz 2.8.5 and have tried 2.8.6 beta1 but cannot solve the
 problem.

-- 
Ticket URL: <https://trac.macports.org/ticket/67280>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list