New issue
Advanced search Search tips

Issue 905203 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Nov 15
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Sakura terminal crashes with "Segmentation fault"

Reported by kapil.pa...@gmail.com, Nov 14

Issue description

UserAgent: Mozilla/5.0 (X11; CrOS x86_64 11151.17.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.27 Safari/537.36
Platform: 11151.17.0 (Official Build) beta-channel cyan

Steps to reproduce the problem:
1. Start "Terminal" (crostini app)
2. Install "sakura" using "sudo apt install sakura"
3. Launch "sakura" from the command line (the result is the same if the desktop icon is used).
4. Type *anything* in the window that opens.
5. The window will close abruptly.

What is the expected behavior?
The "sakura" application seems to work fine on "regular" machines and under "crouton". So the problem does not seem to be the application "sakura" itself.

What went wrong?
See the output of "strace" attached. Appears to be related to a large number of calls to get system time!

Did this work before? N/A 

Chrome version: 71.0.3578.27  Channel: beta
OS Version: 11151.17.0
Flash Version: 0.0.0.0
 
sakura.strace
493 KB Download
This *may* be related with  https://crbug.com/891024 .

I was not looking for time drift bugs when searching for older bugs similar to this. However, in that bug too, the terminal closes with some error related to getting system time.
Components: OS>Systems>Containers
Labels: -Pri-2 -Via-Wizard-Other Proj-Containers Pri-3
Summary: Sakura terminal crashes with "Segmentation fault" (was: #crostini Sakura terminal crashes with "Segmentation fault")
Crash is reproducible on ToT - it's crashing inside a xkb keyboard-related function:

(gdb) bt
#0  0x00007ffff4de5084 in XkbUseExtension (dpy=dpy@entry=0x5555557b3100, major_rtrn=major_rtrn@entry=0x0, minor_rtrn=minor_rtrn@entry=0x0) at ../../../src/xkb/XKBUse.c:652
#1  0x00007ffff4ddbc76 in _XkbLoadDpy (dpy=0x5555557b3100) at ../../../src/xkb/XKBBind.c:513
#2  0x00007ffff4ddc500 in XKeysymToKeycode (dpy=0x5555557b3100, ks=65480) at ../../../src/xkb/XKBBind.c:157
#3  0x0000555555561bf8 in sakura_key_press (widget=widget@entry=0x5555557ca540 [GtkWindow], event=0x5555557bf820, user_data=<optimized out>) at ./src/sakura.c:615
#8  0x00007ffff5e4dfbf in <emit signal ??? on instance 0x5555557ca540 [GtkWindow]> (instance=instance@entry=0x5555557ca540, signal_id=<optimized out>, detail=detail@entry=0)
    at ././gobject/gsignal.c:3447
    #4  0x00007ffff76f2aac in _gtk_marshal_BOOLEAN__BOXED (closure=0x555555936b10, return_value=0x7fffffffdcc0, n_param_values=<optimized out>, param_values=0x7fffffffdd20, invocation_hint=<optimized out>, marshal_data=<optimized out>) at ././gtk/gtkmarshalers.c:86
    #5  0x00007ffff5e32f75 in g_closure_invoke (closure=0x555555936b10, return_value=return_value@entry=0x7fffffffdcc0, n_param_values=2, param_values=param_values@entry=0x7fffffffdd20, invocation_hint=invocation_hint@entry=0x7fffffffdca0) at ././gobject/gclosure.c:804
    #6  0x00007ffff5e44f82 in signal_emit_unlocked_R (node=node@entry=0x5555557ebd00, detail=detail@entry=0, instance=instance@entry=0x5555557ca540, emission_return=emission_return@entry=0x7fffffffde30, instance_and_params=instance_and_params@entry=0x7fffffffdd20) at ././gobject/gsignal.c:3635
    #7  0x00007ffff5e4d67f in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffdee0)
    at ././gobject/gsignal.c:3401
#9  0x00007ffff783f57c in gtk_widget_event_internal (widget=0x5555557ca540 [GtkWindow], event=0x5555557bf820) at ././gtk/gtkwidget.c:7724
#10 0x00007ffff76efc19 in propagate_event (widget=0x5555557ca540 [GtkWindow], event=0x5555557bf820, captured=<optimized out>, topmost=0x0) at ././gtk/gtkmain.c:2671
#11 0x00007ffff76f1bee in gtk_main_do_event (event=0x5555557bf820) at ././gtk/gtkmain.c:1901
#12 0x00007ffff7202e15 in _gdk_event_emit (event=event@entry=0x5555557bf820) at ././gdk/gdkevents.c:73
#13 0x00007ffff725ea72 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at ././gdk/wayland/gdkeventsource.c:121
#14 0x00007ffff5b597f7 in g_main_dispatch (context=0x5555557a9300) at ././glib/gmain.c:3203
#15 0x00007ffff5b597f7 in g_main_context_dispatch (context=context@entry=0x5555557a9300) at ././glib/gmain.c:3856
#16 0x00007ffff5b59a60 in g_main_context_iterate (context=0x5555557a9300, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ././glib/gmain.c:3929
#17 0x00007ffff5b59d82 in g_main_loop_run (loop=0x555555a12f90) at ././glib/gmain.c:4125
#18 0x00007ffff76f0d55 in gtk_main () at ././gtk/gtkmain.c:1312
#19 0x000055555555c464 in main (argc=<optimized out>, argv=<optimized out>) at ./src/sakura.c:3290


Everything seems to work using GDK_BACKEND=x11 (rather than the default wayland), so this is probably a bug in sakura. It's probably misinterpreting a Wayland screen as a X11 Display object.
Status: WontFix (was: Unconfirmed)
Sounds like this is a bug in Sakura, please file a bug on that project. Thanks!
Thanks for the rapid resolution.

The problem is specific to the version (3.4.0-3) in Debian stretch/stable.

Installing the buster/testing version (3.6.0-3) (this requires a bit of apt-fu)
made the problem disappear.

Since Debian stretch/stable was not "meant" to work with Wayland, there *may* be other such applications.

Filed as https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=913777 just in case others get bitten.

Sign in to add a comment