fvwm3 icon indicating copy to clipboard operation
fvwm3 copied to clipboard

FvwmScript implementation of "For" loop triggers abort on systems with stack protection

Open NsCDE opened this issue 3 years ago • 6 comments

This can be triggered clearly on the following systems:

  • Fedora 33 Linux
  • FreeBSD 12.2-RELEASE

This happens with WSM (WSM-4) applet of NsCDE during startup. Here is the trace from Fedora 33, where FvwmScript gets killed by /usr/libexec/gdm-x-session:

stu 27 22:44:24 testbox9 /usr/libexec/gdm-x-session[2233]: *** buffer overflow detected ***: terminated
stu 27 22:44:24 testbox9 systemd-coredump[2262]: Process 2233 (FvwmScript) of user 1000 dumped core.
                                                 
                                                 Stack trace of thread 2233:
                                                 #0  0x00007fde92aab9d5 raise (libc.so.6 + 0x3d9d5)
                                                 #1  0x00007fde92a948a4 abort (libc.so.6 + 0x268a4)
                                                 #2  0x00007fde92aedf27 __libc_message (libc.so.6 + 0x7ff27)
                                                 #3  0x00007fde92b7f27a __fortify_fail (libc.so.6 + 0x11127a)
                                                 #4  0x00007fde92b7db16 __chk_fail (libc.so.6 + 0x10fb16)
                                                 #5  0x00007fde92ae66ef _IO_str_chk_overflow (libc.so.6 + 0x786ef)
                                                 #6  0x00007fde92af21f1 _IO_default_xsputn (libc.so.6 + 0x841f1)
                                                 #7  0x00007fde92adb019 __vfprintf_internal (libc.so.6 + 0x6d019)
                                                 #8  0x00007fde92ae6794 __vsprintf_internal (libc.so.6 + 0x78794)
                                                 #9  0x00007fde92b7d5ff __sprintf_chk (libc.so.6 + 0x10f5ff)
                                                 #10 0x00005577883f8ee0 Loop.lto_priv.0 (FvwmScript + 0x1aee0)
                                                 #11 0x00005577883f3ddd SendMsg (FvwmScript + 0x15ddd)
                                                 #12 0x00005577883f3f1c SendMsgAndString (FvwmScript + 0x15f1c)
                                                 #13 0x00005577883ec82b main (FvwmScript + 0xe82b)
                                                 #14 0x00007fde92a961e2 __libc_start_main (libc.so.6 + 0x281e2)
                                                 #15 0x00005577883ed9de _start (FvwmScript + 0xf9de)

FvwmScript code affecting this is here: https://github.com/NsCDE/NsCDE/blob/master/NsCDE/lib/scripts/WSM-4#L384

If I rewrite this as:

--- /root/NsCDE/NsCDE/lib/scripts/WSM-4	2020-11-27 22:38:35.273573433 +0100
+++ WSM-4	2020-11-30 17:20:50.693226681 +0100
@@ -381,8 +381,10 @@
           Set $CurrDesk = (Add (StrCopy $DeskPageStr 1 1) 1)
           Set $CurrPage = (StrCopy $DeskPageStr 2 3)
 
-          For $deskiter = 1 To $DeskNo Do
+          Set $deskiter = 0
+          While $deskiter < $DeskNo Do
           Begin
+             Set $deskiter = (Add $deskiter 1)
              If $deskiter == $CurrDesk Then
              Begin
                 If (GetValue $deskiter) == 0 Then

Then it works ok on both F33 and FreeBSD 12-2-RELEASE.

NsCDE avatar Nov 30 '20 17:11 NsCDE

Issue-Label Bot is automatically applying the label bug to this issue, with a confidence of 0.88. Please mark this comment with :thumbsup: or :thumbsdown: to give our bot feedback!

Links: app homepage, dashboard and code for this bot.

issue-label-bot[bot] avatar Nov 30 '20 17:11 issue-label-bot[bot]

Here is the minimal example script. Remove ".txt" (upload problems). I have run it with FvwmCommand (or MFL client) on FreeBSD and F33 where it crashes, and on OpenBSD and Debian where it is ok.

TestScript.txt

NsCDE avatar Nov 30 '20 20:11 NsCDE

FreeBSD with debugging symbols from core dump. If you want FvwmScript binary and core dump binary, I can attach that too.

(gdb) bt full
#0  kill () at kill.S:3
#1  0x0000000800fb3b90 in __fail (msg=<optimized out>) at /usr/src/lib/libc/secure/stack_protector.c:130
        sa = {__sigaction_u = {__sa_handler = 0x0, __sa_sigaction = 0x0}, sa_flags = 0, sa_mask = {__bits = {0, 0, 0, 0}}}
        mask = {__bits = {4294967263, 4294967295, 4294967295, 4294967295}}
#2  0x0000000800fb3b00 in __stack_chk_fail () at /usr/src/lib/libc/secure/stack_protector.c:137
#3  0x00000000002256fa in Loop (NbArg=<optimized out>, TabArg=0x802239620) at Instructions.c:1652
        arg = {0x80234e330 "1", 0x8002c2788 "4"}
        CurrArg = 0
        i = 5
        limit = {<optimized out>, 4}
#4  0x0000000000222ac9 in ExecBloc (bloc=<optimized out>) at FvwmScript.c:529
        i = <optimized out>
        i = 0
        val = {40, 10}
        token = 0x8002c2298 "10"
        arg1 = 0x0
        arg2 = 0x0
        windowName = <optimized out>
#5  SendMsg (xobj=0x8022c5540, TypeMsg=<optimized out>) at FvwmScript.c:695
        i = 0
        val = {40, 10}
        token = 0x8002c2298 "10"
        arg1 = 0x0
        arg2 = 0x0
        windowName = <optimized out>
#6  SendMsgAndString (action=<optimized out>, type=<optimized out>) at FvwmScript.c:731
        val = {40, 10}
        token = 0x8002c2298 "10"
        arg1 = 0x0
        arg2 = 0x0
        windowName = <optimized out>
#7  0x0000000000223a29 in MainLoop () at FvwmScript.c:1286
        action = 0x0
        token = 0x6 <error: Cannot access memory at address 0x6>
        packet = <optimized out>
        in_fdset = {__fds_bits = {16, 0 <repeats 15 times>}}
        tv = {tv_sec = 0, tv_usec = 0}
        now = {tv_sec = 1606791455, tv_usec = 418620}
        last_periodic = {tv_sec = 140737488347808, tv_usec = 34362391072}
        fsm_pending = 0
        fd_width = 5
        ptv = 0x0
        delta = 6838070998961440476
        i = <optimized out>
#8  0x0000000000224388 in main (argc=<optimized out>, argv=0x7fffffffe488) at FvwmScript.c:1467
        IsFather = 1
        i = <optimized out>

NsCDE avatar Dec 01 '20 13:12 NsCDE

Here they are.

bin+core.zip

NsCDE avatar Dec 01 '20 13:12 NsCDE

Hi,

I can't reproduce this on FreeBSD-12.

Rather -- I can reproduce it if I use fvwm2 from FreeBSD ports. But if I compile either fvwm2 or fvwm3 myself, then it doesn't crash. That's true for not setting CFLAGS or setting CFLAGS="-O0 -ggdb -fstack-protector-strong -fno-strict-aliasing".

I can only conclude that however the fvwm2 port was built, must have enabled some other CFLAGS variables, but I wouldn't know which ones.

ThomasAdam avatar Dec 01 '20 19:12 ThomasAdam

Yes, but it is the same on Fedora 33, and workaround with While instead of For inside script workarounds this. It is not in environment, I tried in pure FVWM outside NsCDE. However, past year every now and then some people complained me about that for WSM applet, but they were never capable or wilful to go to details and debug. Now that I have various test environments in VMs, I see the same thing. It is happening on NetBSD too, but in some 1/3 cases during start.

There must be something in implementation where For and While differs and which causes that. I'll have to look there.

Here is richer trace:

(gdb) bt full
#0  kill () at kill.S:3
#1  0x0000000800db2b90 in __fail (msg=<optimized out>) at /usr/src/lib/libc/secure/stack_protector.c:130
        sa = {__sigaction_u = {__sa_handler = 0x0, __sa_sigaction = 0x0}, sa_flags = 0, sa_mask = {__bits = {0, 0, 0, 0}}}
        mask = {__bits = {4294967263, 4294967295, 4294967295, 4294967295}}
#2  0x0000000800db2b00 in __stack_chk_fail () at /usr/src/lib/libc/secure/stack_protector.c:137
#3  0x00000000002256fa in Loop (NbArg=<optimized out>, TabArg=0x80199aa60) at Instructions.c:1652
        arg = {0x802006320 "1", 0x8002c11d0 ""}
        CurrArg = 0
        i = 1
        limit = {<optimized out>, 0}
#4  0x0000000000222899 in ExecBloc (bloc=<optimized out>) at FvwmScript.c:529
        i = <optimized out>
        i = 1
#5  SendMsg (xobj=0x8020c4000, TypeMsg=<optimized out>) at FvwmScript.c:695
        i = 1
#6  0x000000000022536f in SendSign (NbArg=<optimized out>, TabArg=<optimized out>) at Instructions.c:1529
        i = <optimized out>
        arg = {0x802006000 "1", 0x802006310 "1"}
        TypeMsg = 0
#7  0x0000000000222899 in ExecBloc (bloc=<optimized out>) at FvwmScript.c:529
        i = <optimized out>
        i = 0
#8  SendMsg (xobj=0x8020c4000, TypeMsg=<optimized out>) at FvwmScript.c:695
        i = 0
#9  0x00000000002397fc in EvtMousePushButton (xobj=0x8020c4000, EvtButton=0x27d690 <ReadXServer.event>) at PushButton.c:248
        event = 
            {type = 5, xany = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457}, xkey = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198040212, x = 32, y = 24, x_root = 677, y_root = 106, state = 256, keycode = 1, same_screen = 1}, xbutton = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198040212, x = 32, y = 24, x_root = 677, y_root = 106, state = 256, button = 1, same_screen = 1}, xmotion = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198040212, x = 32, y = 24, x_root = 677, y_root = 106, state = 256, is_hint = 1 '\001', same_screen = 1}, xcrossing = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198040212, x = 32, y = 24, x_root = 677, y_root = 106, mode = 256, detail = 1, same_screen = 1, focus = 1, state = 256}, xfocus = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, mode = 905, detail = 0}, xexpose = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, x = 905, y = 0, width = 6291461, height = 0, count = 198040212}, xgraphicsexpose = {type = 5, serial = 83, send_event = 0, display = 0x802021000, drawable = 6291457, x = 905, y = 0, width = 6291461, height = 0, count = 198040212, major_code = 0, minor_code = 32}, xnoexpose = {type = 5, serial = 83, send_event = 0, display = 0x802021000, drawable = 6291457, major_code = 905, minor_code = 0}, xvisibility = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, state = 905}, xcreatewindow = {type = 5, serial = 83, send_event = 0, display = 0x802021000, parent = 6291457, window = 905, x = 6291461, y = 0, width = 198040212, height = 0, border_width = 32, override_redirect = 24}, xdestroywindow = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905}, xunmap = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905, from_configure = 6291461}, xmap = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905, override_redirect = 6291461}, xmaprequest = {type = 5, serial = 83, send_event = 0, display = 0x802021000, parent = 6291457, window = 905}, xreparent = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905, parent = 6291461, x = 198040212, y = 0, override_redirect = 32}, xconfigure = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905, x = 6291461, y = 0, width = 198040212, height = 0, border_width = 32, above = 455266534053, override_redirect = 256}, xgravity = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905, x = 6291461, y = 0}, xresizerequest = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, width = 905, height = 0}, xconfigurerequest = {type = 5, serial = 83, send_event = 0, display = 0x802021000, parent = 6291457, window = 905, x = 6291461, y = 0, width = 198040212, height = 0, border_width = 32, above = 455266534053, detail = 256, value_mask = 4294967297}, xcirculate = {type = 5, serial = 83, send_event = 0, display = 0x802021000, event = 6291457, window = 905, place = 6291461}, xcirculaterequest = {type = 5, serial = 83, send_event = 0, display = 0x802021000, parent = 6291457, window = 905, place = 6291461}, xproperty = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, atom = 905, time = 6291461, state = 198040212}, xselectionclear = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, selection = 905, time = 6291461}, xselectionrequest = {type = 5, serial = 83, send_event = 0, display = 0x802021000, owner = 6291457, requestor = 905, selection = 6291461, target = 198040212, property = 103079215136, time = 455266534053}, xselection = {type = 5, serial = 83, send_event = 0, display = 0x802021000, requestor = 6291457, selection = 905, target = 6291461, property = 198040212, time = 103079215136}, xcolormap = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, colormap = 905, new = 6291461, state = 0}, xclient = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, message_type = 905, format = 6291461, data = {b = "\224\332\315\v\000\000\000\000 \000\000\000\030\000\000\000\245\002\000", s = {-9580, 3021, 0, 0, 32, 0, 24, 0, 677, 0}, l = {198040212, 103079215136, 455266534053, 4294967552, 4294967297}}}, xmapping = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, request = 905, first_keycode = 0, count = 6291461}, xerror = {type = 5, display = 0x53, resourceid = 0, serial = 34393427968, error_code = 1 '\001', request_code = 0 '\000', minor_code = 96 '`'}, xkeymap = {type = 5, serial = 83, send_event = 0, display = 0x802021000, window = 6291457, key_vector = "\211\003\000\000\000\000--Type <RET> for more, q to quit, c to continue without paging-- 
\000\000\005\000`\000\000\000\000\000\224\332\315\v\000\000\000\000 \000\000\000\030\000\000"}, xgeneric = {type = 5, serial = 83, send_event = 0, display = 0x802021000, extension = 6291457, evtype = 0}, xcookie = {type = 5, serial = 83, send_event = 0, display = 0x802021000, extension = 6291457, evtype = 0, cookie = 905, data = 0x600005}, pad = {5, 83, 0, 34393427968, 6291457, 905, 6291461, 198040212, 103079215136, 455266534053, 4294967552, 4294967297, 256, 0 <repeats 11 times>}}
        End = 0
        modif = 256
        x1 = 677
        x2 = 32
        y1 = 106
        y2 = 24
        i = 8
        Win1 = 905
        Win2 = 6291461
        WinPop = 140737488348600
        WinBut = 6291461
        In = 1
        str = 0x802021000 "\320\273\234\001\b"
        x = 0
        y = 198039963
        hOpt = 1746963803
        yMenu = 1056244607
        hMenu = 8
        wMenu = 3868065
        oldvalue = 0
        newvalue = -6752
        mask = 2638272
        Attr = 
          {background_pixmap = 140737488348640, background_pixel = 0, border_pixmap = 7503152402237031295, border_pixel = 34393427968, bit_gravity = 76981, win_gravity = 0, backing_store = 0, backing_planes = 0, backing_pixel = 34393427968, save_under = 33689600, event_mask = 2622608, do_not_propagate_mask = 140737488348720, override_redirect = 3789879, colormap = 2622808, cursor = 2}
#10 0x00000000002233ed in ReadXServer () at FvwmScript.c:1046
        event = 
            {type = 4, xany = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457}, xkey = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198039963, x = 32, y = 24, x_root = 677, y_root = 106, state = 0, keycode = 1, same_screen = 1}, xbutton = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198039963, x = 32, y = 24, x_root = 677, y_root = 106, state = 0, button = 1, same_screen = 1}, xmotion = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198039963, x = 32, y = 24, x_root = 677, y_root = 106, state = 0, is_hint = 1 '\001', same_screen = 1}, xcrossing = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, root = 905, subwindow = 6291461, time = 198039963, x = 32, y = 24, x_root = 677, y_root = 106, mode = 0, detail = 1, same_screen = 1, focus = 1, state = 0}, xfocus = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, mode = 905, detail = 0}, xexpose = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, x = 905, y = 0, width = 6291461, height = 0, count = 198039963}, xgraphicsexpose = {type = 4, serial = 71, send_event = 0, display = 0x802021000, drawable = 6291457, x = 905, y = 0, width = 6291461, height = 0, count = 198039963, major_code = 0, minor_code = 32}, xnoexpose = {type = 4, serial = 71, send_event = 0, display = 0x802021000, drawable = 6291457, major_code = 905, minor_code = 0}, xvisibility = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, state = 905}, xcreatewindow = {type = 4, serial = 71, send_event = 0, display = 0x802021000, parent = 6291457, window = 905, x = 6291461, y = 0, width = 198039963, height = 0, border_width = 32, override_redirect = 24}, xdestroywindow = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905}, xunmap = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905, from_configure = 6291461}, xmap = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905, override_redirect = 6291461}, xmaprequest = {type = 4, serial = 71, send_event = 0, display = 0x802021000, parent = 6291457, window = 905}, xreparent = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905, parent = 6291461, x = 198039963, y = 0, override_redirect = 32}, xconfigure = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905, x = 6291461, y = 0, width = 198039963, height = 0, border_width = 32, above = 455266534053, override_redirect = 0}, xgravity = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905, x = 6291461, y = 0}, xresizerequest = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, width = 905, height = 0}, xconfigurerequest = {type = 4, serial = 71, send_event = 0, display = 0x802021000, parent = 6291457, window = 905, x = 6291461, y = 0, width = 198039963, height = 0, border_width = 32, above = 455266534053, detail = 0, value_mask = 4294967297}, xcirculate = {type = 4, serial = 71, send_event = 0, display = 0x802021000, event = 6291457, window = 905, place = 6291461}, xcirculaterequest = {type = 4, serial = 71, send_event = 0, display = 0x802021000, parent = 6291457, window = 905, place = 6291461}, xproperty = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, atom = 905, time = 6291461, state = 198039963}, xselectionclear = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, selection = 905, time = 6291461}, xselectionrequest = {type = 4, serial = 71, send_event = 0, display = 0x802021000, owner = 6291457, requestor = 905, selection = 6291461, target = 198039963, property = 103079215136, time = 455266534053}, xselection = {type = 4, serial = 71, send_event = 0, display = 0x802021000, requestor = 6291457, selection = 905, target = 6291461, property = 198039963, time = 103079215136}, xcolormap = {type = 4, serial = 71, send_event = 0, display = 0x802021000, wi--Type <RET> for more, q to quit, c to continue without paging--
ndow = 6291457, colormap = 905, new = 6291461, state = 0}, xclient = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, message_type = 905, format = 6291461, data = {b = "\233\331\315\v\000\000\000\000 \000\000\000\030\000\000\000\245\002\000", s = {-9829, 3021, 0, 0, 32, 0, 24, 0, 677, 0}, l = {198039963, 103079215136, 455266534053, 4294967296, 4294967297}}}, xmapping = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, request = 905, first_keycode = 0, count = 6291461}, xerror = {type = 4, display = 0x47, resourceid = 0, serial = 34393427968, error_code = 1 '\001', request_code = 0 '\000', minor_code = 96 '`'}, xkeymap = {type = 4, serial = 71, send_event = 0, display = 0x802021000, window = 6291457, key_vector = "\211\003\000\000\000\000\000\000\005\000`\000\000\000\000\000\233\331\315\v\000\000\000\000 \000\000\000\030\000\000"}, xgeneric = {type = 4, serial = 71, send_event = 0, display = 0x802021000, extension = 6291457, evtype = 0}, xcookie = {type = 4, serial = 71, send_event = 0, display = 0x802021000, extension = 6291457, evtype = 0, cookie = 905, data = 0x600005}, pad = {4, 71, 0, 34393427968, 6291457, 905, 6291461, 198039963, 103079215136, 455266534053, 4294967296, 4294967297, 0 <repeats 12 times>}}
        evnt_sel = 
            {type = 0, xany = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0}, xkey = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, root = 0, subwindow = 0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0, state = 0, keycode = 0, same_screen = 0}, xbutton = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, root = 0, subwindow = 0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0, state = 0, button = 0, same_screen = 0}, xmotion = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, root = 0, subwindow = 0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0, state = 0, is_hint = 0 '\000', same_screen = 0}, xcrossing = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, root = 0, subwindow = 0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0, mode = 0, detail = 0, same_screen = 0, focus = 0, state = 0}, xfocus = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, mode = 0, detail = 0}, xexpose = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, x = 0, y = 0, width = 0, height = 0, count = 0}, xgraphicsexpose = {type = 0, serial = 0, send_event = 0, display = 0x0, drawable = 0, x = 0, y = 0, width = 0, height = 0, count = 0, major_code = 0, minor_code = 0}, xnoexpose = {type = 0, serial = 0, send_event = 0, display = 0x0, drawable = 0, major_code = 0, minor_code = 0}, xvisibility = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, state = 0}, xcreatewindow = {type = 0, serial = 0, send_event = 0, display = 0x0, parent = 0, window = 0, x = 0, y = 0, width = 0, height = 0, border_width = 0, override_redirect = 0}, xdestroywindow = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0}, xunmap = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0, from_configure = 0}, xmap = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0, override_redirect = 0}, xmaprequest = {type = 0, serial = 0, send_event = 0, display = 0x0, parent = 0, window = 0}, xreparent = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0, parent = 0, x = 0, y = 0, override_redirect = 0}, xconfigure = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0, x = 0, y = 0, width = 0, height = 0, border_width = 0, above = 0, override_redirect = 0}, xgravity = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0, x = 0, y = 0}, xresizerequest = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, width = 0, height = 0}, xconfigurerequest = {type = 0, serial = 0, send_event = 0, display = 0x0, parent = 0, window = 0, x = 0, y = 0, width = 0, height = 0, border_width = 0, above = 0, detail = 0, value_mask = 0}, xcirculate = {type = 0, serial = 0, send_event = 0, display = 0x0, event = 0, window = 0, place = 0}, xcirculaterequest = {type = 0, serial = 0, send_event = 0, display = 0x0, parent = 0, window = 0, place = 0}, xproperty = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, atom = 0, time = 0, state = 0}, xselectionclear = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, selection = 0, time = 0}, xselectionrequest = {type = 0, serial = 0, send_event = 0, display = 0x0, owner = 0, requestor = 0, selection = 0, target = 0, property = 0, time = 0}, xselection = {type = 0, serial = 0, send_event = 0, display = 0x0, requestor = 0, selection = 0, target = 0, property = 0, time = 0}, xcolormap = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, colormap = 0, new = 0, state = 0}, xclient = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, message_type = 0, format = 0, data = {b = '\000' <repeats 19 times>, s = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, l = {0, 0, 0, 0, 0}}}, xmapping = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, request = 0, first_keycode = 0, count = 0}, xerror = {type = 0, display = 0x0, resourceid = 0, serial = 0, error_code = 0 '\000', request_code = 0 '\000', minor_code = 0 '\000'}, xkeymap = {type = 0, serial = 0, send_event = 0, display = 0x0, window = 0, key_vector = '\000' <repeats 31 times>}, xgeneric = {type = 0, serial = 0, send_event = 0, display = 0x0, extension = 0, evtype = 0}, xcookie = {type = 0, serial = 0, send_event = 0, display = 0x0, extension = 0, evtype = 0, cookie = 0, data = 0x0}, pad = {0 <repeats 24 times>}}
        buf = "\000\000\000\000\000\000\000\000\000"
        tmp = {res_name = 0x0, res_class = 0x5ee5b565ee9601d5 <error: Cannot access memory at address 0x5ee5b565ee9601d5>}
        find = <optimized out>
        isTab = <optimized out>
        ks = <optimized out>
        action = <optimized out>
        ex = <optimized out>
        ey = <optimized out>
        ex2 = <optimized out>
        ey2 = <optimized out>
        i = 0
        octet = <optimized out>
#11 0x00000000002239af in MainLoop () at FvwmScript.c:1182
        in_fdset = {__fds_bits = {8, 0 <repeats 15 times>}}
        tv = {tv_sec = 0, tv_usec = 0}
        now = {tv_sec = 1606852437, tv_usec = 76981}
        last_periodic = {tv_sec = 140737488349120, tv_usec = 34362391072}
        fsm_pending = 0
        fd_width = 5
        ptv = 0x0
        delta = 6838071058631098837
--Type <RET> for more, q to quit, c to continue without paging--
        i = <optimized out>
#12 0x0000000000224388 in main (argc=<optimized out>, argv=0x7fffffffe9a8) at FvwmScript.c:1467
        IsFather = 1
        i = <optimized out>
(gdb) quit

NsCDE avatar Dec 01 '20 20:12 NsCDE