Skip to content

Segmentation fault while turning off display port cable and mouse pointer is positioned on the monitor which is going off #15

Closed
@NsCDE

Description

@NsCDE

Hello!

As per request on fvwm@fvwm.org, I have compiled (with -g) fvwm3 and tried things what Thomas said it would be nice to try.

There are glitches (described in separate issues), but the main one is this from the subject: if I enable secondary monitor, either before login or with "xrandr --output eDP1 --mode 1920x1080 --primary --output DP1 --mode 2560x1440 --right-of eDP1 --noprimary" I can work ok.

If mouse pointer is on eDP1 and I turn off DP1, windows from the DP1 are migrated to eDP1 and nothing crashes. But, if mouse pointer is left on the DP1 while pulling off it's cable, FVWM 3 dies with segmentation fault and I'm logged out.

System:
HP EliteBook 850 G2
CentOS 7 x86_64
Xorg X.Org X Server 1.20.4
fvwm3 from today's (12. 1. 2020.) clone of the repo.

Here is the gdb trace of the core dump. I have them 3 (repeatable) and they are all the same. Some debug info is missing, but probably this is enought description and function names for thing to be repeatable.

(root!prokopije:~)# gdb /opt/fvwm3/bin/fvwm3 /var/coredumps/core-prokopije-fvwm3-7011-11-6392
Reading symbols from /opt/fvwm3/bin/fvwm3...done.
[New LWP 6392]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/opt/fvwm3/bin/fvwm3 -f /opt/NsCDE/config/NsCDE-Main.conf -s'.
Program terminated with signal 11, Segmentation fault.
#0 monitor_by_name (name=) at FScreen.c:130
130 FScreen.c: No such file or directory.
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 cairo-1.15.12-4.el7.x86_64 expat-2.1.0-10.el7_3.x86_64 fontconfig-2.13.0-4.3.el7.x86_64 freetype-2.8-14.el7.x86_64 fribidi-1.0.2-1.el7_7.1.x86_64 gdk-pixbuf2-2.36.12-3.el7.x86_64 glib2-2.56.1-5.el7.x86_64 glibc-2.17-292.el7.x86_64 graphite2-1.3.10-1.el7_3.x86_64 harfbuzz-1.7.5-2.el7.x86_64 libICE-1.0.9-9.el7.x86_64 libSM-1.2.2-2.el7.x86_64 libX11-1.6.7-2.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libXcursor-1.1.15-1.el7.x86_64 libXext-1.3.3-3.el7.x86_64 libXfixes-5.0.3-1.el7.x86_64 libXft-2.3.2-2.el7.x86_64 libXpm-3.5.12-1.el7.x86_64 libXrandr-1.5.1-2.el7.x86_64 libXrender-0.9.10-1.el7.x86_64 libblkid-2.23.2-61.el7_7.1.x86_64 libcroco-0.6.12-4.el7.x86_64 libffi-3.0.13-18.el7.x86_64 libgcc-4.8.5-39.el7.x86_64 libglvnd-1.0.1-0.8.git5baa1e5.el7.x86_64 libglvnd-egl-1.0.1-0.8.git5baa1e5.el7.x86_64 libglvnd-glx-1.0.1-0.8.git5baa1e5.el7.x86_64 libmount-2.23.2-61.el7_7.1.x86_64 libpng-1.5.13-7.el7_2.x86_64 librsvg2-2.40.20-1.el7.x86_64 libselinux-2.5-14.1.el7.x86_64 libstroke-0.5.1-33.el7.x86_64 libthai-0.1.14-9.el7.x86_64 libuuid-2.23.2-61.el7_7.1.x86_64 libxcb-1.13-1.el7.x86_64 libxml2-2.9.1-6.el7_2.3.x86_64 pango-1.42.4-4.el7_7.x86_64 pcre-8.32-17.el7.x86_64 pixman-0.34.0-1.el7.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-18.el7.x86_64
(gdb) bt
#0 monitor_by_name (name=) at FScreen.c:130
#1 0x00000000004861b3 in FindScreen (screen=screen@entry=FSCREEN_BY_NAME, arg=) at FScreen.c:383
#2 FScreenGetScrRect (arg=arg@entry=0x7ffe64ed0a20, screen=screen@entry=FSCREEN_BY_NAME, x=x@entry=0x7ffe64ed08c0, y=y@entry=0x7ffe64ed08c4, w=w@entry=0x7ffe64ed08c8, h=h@entry=0x7ffe64ed08cc)
at FScreen.c:433
#3 0x000000000044d507 in __place_window (reason=0x7ffe64ed0930, win_opts=0x7ffe64ed0ba0, mode=1, attr_g=0x7ffe64ed0b90, pstyle=0x7ffe64ed0c50, exc=0x1721470, start_style=...) at placement.c:1669
#4 setup_window_placement (fw=, pstyle=pstyle@entry=0x7ffe64ed0c50, attr_g=attr_g@entry=0x7ffe64ed0b90, win_opts=win_opts@entry=0x7ffe64ed0ba0, mode=mode@entry=PLACE_AGAIN)
at placement.c:2277
#5 0x000000000044e19e in CMD_PlaceAgain (cond_rc=, exc=0x17631e0, action=0x1725d2a "") at placement.c:2353
#6 0x00000000004627cb in __execute_function (cond_rc=cond_rc@entry=0x7ffe64ed1360, exc=exc@entry=0x172fca0, action=action@entry=0x175f5f4 "PlaceAgain", exec_flags=,
exec_flags@entry=128 '\200', args=args@entry=0x0, has_ref_window_moved=has_ref_window_moved@entry=0) at functions.c:639
#7 0x00000000004634e1 in execute_function (exec_flags=128 '\200', action=0x175f5f4 "PlaceAgain", exc=0x172fca0, cond_rc=0x7ffe64ed1360) at functions.c:1302
#8 execute_function_override_window (cond_rc=cond_rc@entry=0x7ffe64ed1360, exc=exc@entry=0x173e0b0, action=0x175f5f4 "PlaceAgain", exec_flags=128 '\200', exec_flags@entry=0 '\000', fw=)
at functions.c:1352
#9 0x0000000000456859 in CMD_All (cond_rc=0x7ffe64ed1360, exc=0x173e0b0, action=) at conditional.c:1646
#10 0x00000000004627cb in __execute_function (cond_rc=cond_rc@entry=0x0, exc=exc@entry=0x1748740, action=action@entry=0x49e1d9 "All PlaceAgain", exec_flags=, exec_flags@entry=0 '\000',
args=args@entry=0x0, has_ref_window_moved=has_ref_window_moved@entry=0) at functions.c:639
#11 0x00000000004634e1 in execute_function (exec_flags=0 '\000', action=0x49e1d9 "All PlaceAgain", exc=0x1748740, cond_rc=0x0) at functions.c:1302
#12 execute_function_override_window (cond_rc=cond_rc@entry=0x0, exc=exc@entry=0x0, action=action@entry=0x49e1d9 "All PlaceAgain", exec_flags=exec_flags@entry=0 '\000', fw=fw@entry=0x0) at functions.c:1352
#13 0x0000000000428e97 in HandleRRScreenChangeNotify (e=e@entry=0x7ffe64ed16b0) at events.c:1798
#14 0x000000000042b5b8 in dispatch_event (e=e@entry=0x7ffe64ed16b0) at events.c:4122
#15 0x000000000042c25d in HandleEvents () at events.c:4231
#16 0x000000000040af4a in main (argc=, argv=0x7ffe64ed1f28) at fvwm3.c:2597

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions