FreeRDP / FreeRDP

FreeRDP is a free remote desktop protocol library and clients

Home Page:http://www.freerdp.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Random BadWindow (invalid Window parameter) errrors and failing to connect

user-629782 opened this issue · comments

While having multiple RDP sessions open to Windows 2022 RDS Servers, I randomly get this error and fails to connect when opening another to the same or different server. Shutting down all sessions and starting again to open a new one usually works again. This normally happens more frequently when having multiple sessions open but has also happened with a fresh connection attempt to one server. I cannot say if it is a Xorg or Gnome anomaly or not. I have tried to change some Gnome tweaks to see if there was any changes but there was not.

Ubuntu 22.04 Gnome Xorg (not Wayland) fully patched connecting to Windows 2022 RDS Server fully patched.

Started happening with 3.3.0 official release and continues with 3.4.0 release.

/usr/local/freerdp/bin/xfreerdp -grab-keyboard /u:Administrator /p:********* /size:1600x840 /drive:Temp,/home/user/Temp /d:DOMAIN /admin /sec:nla /cert:ignore /network:auto /v:192.168.0.X /log-level:info

cmake -DCMAKE_INSTALL_PREFIX:PATH=$DSTDIR
-DCMAKE_BUILD_TYPE=Release
-DWITH_DSP_FFMPEG=ON
-DWITH_FFMPEG=ON
-DWITH_PULSE=ON
-DWITH_CUPS=ON
-DWITH_SWSCALE=ON
-DWITH_CHANNELS=ON
-DWITH_CLIENT_CHANNELS=ON
-DWITH_KRB5=OFF
-DWITH_MANPAGES=ON
-DWITH_WAYLAND=OFF
-DWITH_CLIENT_SDL=OFF
-DWITH_SERVER=OFF
-DWITH_SAMPLE=OFF
-DCHANNEL_URBDRC_CLIENT=ON
-DBUILD_SHARED_LIBS=OFF
-Wno-all
-B build
-S .

When it fails to connect, I get this backtrace in the logs:

[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [xf_error_handler]: BadWindow (invalid Window parameter)
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 0: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 1: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 2: dli_fname=/lib/x86_64-linux-gnu/libX11.so.6 [0x7d755e686000], dli_sname=_XError [0x7d755e6ca8d0]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 3: dli_fname=/lib/x86_64-linux-gnu/libX11.so.6 [0x7d755e686000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 4: dli_fname=/lib/x86_64-linux-gnu/libX11.so.6 [0x7d755e686000], dli_sname=_XReply [0x7d755e6cc220]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 5: dli_fname=/lib/x86_64-linux-gnu/libX11.so.6 [0x7d755e686000], dli_sname=XGetWindowProperty [0x7d755e6ab4a0]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 6: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 7: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 8: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 9: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 10: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 11: dli_fname=/usr/local/freerdp/bin/xfreerdp [0x5947fbf5b000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 12: dli_fname=/lib/x86_64-linux-gnu/libc.so.6 [0x7d755be00000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 13: dli_fname=/lib/x86_64-linux-gnu/libc.so.6 [0x7d755be00000], dli_sname=(null) [(nil)]
[15:05:43:84] [7181:00001c2c] [ERROR][com.freerdp.client.x11] - [winpr_log_backtrace_ex]: 14: unresolvable, address=(nil)

Thank you.

run with /log-level:trace to get some details on where the call is made from.

I setup my command line as you mentioned. I will run like this for a while to see if it happens. However, tracing always seems to mask these types of problems from my experience in the past with X problems. Will report back if it happens again.

Getting the feeling X11/Xorg is not getting any attention (#10028), so I switched reluctantly to XWayland and the problems both here and in the previously mentioned closed issue have gone away.