Skip to content

JWM crashes when the "Mouse" tag does not have the "context" attribute #659

@sleeptightAnsiC

Description

@sleeptightAnsiC

Hello,

I've found out that JWM will crash (segfault), if I use Mouse tag without context attribute, anywhere inside of my $HOME/.jwmrc config.

reduced testcase:

<?xml version="1.0"?>
<JWM>
    <Mouse
        mask="4"
        button="1"
    >move</Mouse>
</JWM>

repro: save the testcase from above to $HOME/.jwmrc and exec jwm -p :
(trying to Restart via jwm -restart or start with startx will also result in crash)

$ jwm -p
Segmentation fault         (core dumped) jwm -p

callstack:

#0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:283
#1  0x0000555555574896 in FindValue (mapping=mapping@entry=0x555555592840 <MC_MAP>, count=count@entry=7, key=key@entry=0x0) at misc.c:251
#2  0x0000555555579e4a in ParseMouse (tp=0x5555555b55f0) at parse.c:993
#3  Parse (start=start@entry=0x5555555b56d0, depth=depth@entry=1) at parse.c:380
#4  0x000055555557b888 in ParseFile (fileName=<optimized out>, depth=1) at parse.c:324
#5  ParseConfig (fileName=<optimized out>) at parse.c:291
#6  0x000055555555d2ad in main (argc=2, argv=0x7fffffffdb48) at main.c:153

locals and args in frame: #1 0x0000555555574896 in FindValue(...) at misc.c:251 :

(gdb) info locals
x = 3
rc = <optimized out>
left = 0
right = 6
(gdb) info args
mapping = 0x555555592840 <MC_MAP>
count = 7
key = 0x0

my environment:

$ jwm -v
JWM v2.4.6 by Joe Wingbermuehle
compiled options: confirm icons jpeg nls pango png shape svg xbm xft xinerama xpm xrender 
system configuration: /home/korn/.local/jwm/etc/system.jwmrc
$ uname -a
Linux MAL200424 6.16.8-arch3-1 #1 SMP PREEMPT_DYNAMIC Mon, 22 Sep 2025 22:08:35 +0000 x86_64 GNU/Linux
$ cc --version
cc (GCC) 15.2.1 20250813
$ ldd --version
ldd (GNU libc) 2.42

I installed JWM from latest source release from https://github.com/joewing/jwm/releases/download/v2.4.6/jwm-2.4.6.tar.xz
There are NO custom patches applied to it. I haven't used any ./configure options other than --prefix=$HOME/.local/jwm

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions