#1147735 libfreerdp3-3: SEGV on stable freerdp (BPO version works)

Package:
libfreerdp3-3
Source:
libfreerdp3-3
Description:
Free Remote Desktop Protocol library (core library)
Submitter:
Patrick Plenefisch
Date:
2026-09-14 20:27:01 UTC
Severity:
normal
Tags:
#1147735#5
Date:
2026-09-14 19:37:05 UTC
From:
To:
The 3.15.0+dfsg-2.1+deb13u3 version that is packaged with stable (trixie) will
connect for only a few frames, slow down, and then segfault within a minute or
so. Via Remina:

[New Thread 0x7ffd44ff96c0 (LWP 45204)]
[New Thread 0x7ffd2ffff6c0 (LWP 45205)]
[New Thread 0x7ffd2f7fe6c0 (LWP 45206)]
[New Thread 0x7ffd2effd6c0 (LWP 45207)]
[New Thread 0x7ffd2e7fc6c0 (LWP 45208)]
[Thread 0x7fffdf5fe6c0 (LWP 44704) exited]
(org.remmina.Remmina:44696): remmina-DEBUG: 12:13:53.316:
(remmina_rdp_event_on_focus_in) - Top level name is: RemminaConnectionWindow
[Thread 0x7ffd2effd6c0 (LWP 45207) exited]
[Thread 0x7fffdfdff6c0 (LWP 44703) exited]
[Thread 0x7ffd2f7fe6c0 (LWP 45206) exited]
[Thread 0x7ffd2e7fc6c0 (LWP 45208) exited]
[Thread 0x7ffd44ff96c0 (LWP 45204) exited]
[Thread 0x7fffddf766c0 (LWP 44833) exited]
[Thread 0x7ffd2ffff6c0 (LWP 45205) exited]
[New Thread 0x7ffd2ffff6c0 (LWP 45427)]
[New Thread 0x7fffddf766c0 (LWP 45428)]
[New Thread 0x7ffd2e7fc6c0 (LWP 45430)]
[New Thread 0x7ffd44ff96c0 (LWP 45431)]
[New Thread 0x7fffdfda16c0 (LWP 45432)]
(org.remmina.Remmina:44696): remmina-DEBUG: 12:14:12.626:
(remmina_rdp_event_on_focus_in) - Top level name is: RemminaConnectionWindow
[Thread 0x7ffd44ff96c0 (LWP 45431) exited]
[Thread 0x7ffd2e7fc6c0 (LWP 45430) exited]
[Thread 0x7fffddf766c0 (LWP 45428) exited]
[Thread 0x7ffd2ffff6c0 (LWP 45427) exited]
malloc(): unaligned tcache chunk detected
double free or corruption (fasttop)
double free or corruption (fasttop)

Thread 159 "RemmRDP:TestVM" received signal SIGABRT, Aborted.
[Switching to Thread 0x7ffd25ffb6c0 (LWP 44999)]
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6,
no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
warning: 44     ./nptl/pthread_kill.c: No such file or directory
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1  0x00007ffff64e673f in __pthread_kill_internal (threadid=<optimized out>,
signo=6) at ./nptl/pthread_kill.c:89
#2  0x00007ffff6491c42 in __GI_raise (sig=sig@entry=6) at
../sysdeps/posix/raise.c:26
#3  0x00007ffff647a4ac in __GI_abort () at ./stdlib/abort.c:77
#4  0x00007ffff647b291 in __libc_message_impl (fmt=fmt@entry=0x7ffff65fb32d
"%s\n") at ../sysdeps/posix/libc_fatal.c:134
#5  0x00007ffff64f01a5 in malloc_printerr (str=str@entry=0x7ffff65feab0
"malloc(): unaligned tcache chunk detected") at ./malloc/malloc.c:5832
#6  0x00007ffff64f5f0c in tcache_get_n (tc_idx=<optimized out>, ep=<optimized
out>) at ./malloc/malloc.c:3185
#7  tcache_get (tc_idx=<optimized out>) at ./malloc/malloc.c:3201
#8  tcache_try_malloc (bytes=24, memptr=<synthetic pointer>) at
./malloc/malloc.c:3364
#9  __libc_calloc (n=<optimized out>, elem_size=<optimized out>) at
./malloc/malloc.c:3795
#10 0x00007ffff0b48c4d in winpr_CreateThreadpoolWork () at /lib/x86_64-linux-
gnu/libwinpr3.so.3
#11 0x00007ffff09228fd in progressive_decompress () at /lib/x86_64-linux-
gnu/libfreerdp3.so.3
#12 0x00007ffff087379e in ??? () at /lib/x86_64-linux-gnu/libfreerdp3.so.3
#13 0x00007ffff0ce0393 in ??? () at /lib/x86_64-linux-gnu/libfreerdp-
client3.so.3
#14 0x00007ffff0ce1beb in ??? () at /lib/x86_64-linux-gnu/libfreerdp-
client3.so.3
#15 0x00007ffff0d07fca in ??? () at /lib/x86_64-linux-gnu/libfreerdp-
client3.so.3
#16 0x00007ffff0d0ec7b in ??? () at /lib/x86_64-linux-gnu/libfreerdp-
client3.so.3
#17 0x00007ffff0cbb199 in ??? () at /lib/x86_64-linux-gnu/libfreerdp-
client3.so.3
#18 0x00007ffff0b4850a in ??? () at /lib/x86_64-linux-gnu/libwinpr3.so.3
#19 0x00007ffff64e48bb in start_thread (arg=<optimized out>) at
./nptl/pthread_create.c:448
#20 0x00007ffff6562538 in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
(gdb) exit


The version (2) in bookwork had no issue connecting to this system, and
installing 3.30.0+dfsg-1~bpo13+1 from trixie-backports (via sudo apt install -t
stable-backports libfreerdp-client3-3 freerdp3-wayland libfreerdp3-3 ) works
just fine.
It is only the verison in stable (3.15) that has this issue.

I've seen this connecting to a Debian 12 xrdp session

#1147735#10
Date:
2026-09-14 20:25:42 UTC
From:
To:
Basically, this is a wontfix.

With so many fixes together with refactoring in subsequent versions, and
my attempts to back-port these fixes to older version across refactoring,
with many more fixes coming - I gave up with version in trixie.  I'll keep
the bpo13 version current, but wont touch trixie version.  Debian principle -
to only back-port fixes but stay with the same version, - does not work in
this case.

I tried hard, and the result is what you see - a monster, and no one knows
how it works (or fails).

I wont even look further.  Sorry.

Thanks,

/mjt