aleitner commented on code in PR #633:
URL: https://github.com/apache/guacamole-server/pull/633#discussion_r2806843573


##########
src/protocols/rdp/rdp.c:
##########
@@ -33,7 +33,6 @@
 #include "channels/rdpsnd/rdpsnd.h"
 #include "client.h"
 #include "color.h"
-#include "config.h"

Review Comment:
   When resizing the window, the desktop display stayed fixed at whatever size 
it connected at, and with certain timing we'd hit a segfault. After a bunch of 
pointer tracing I found that `rdp_client->disp` was non-NULL in `rdp.c` but 
`NULL` when read from `disp.c` using the exact same `rdp_client` pointer, which 
turned out to be a struct layout mismatch: `disp.c` and several other files in 
channels/ weren't including `config.h`, so some definitions were undefined and 
pointer fields were missing from their view of `guac_rdp_client`, shifting the 
offset of disp by some bytes to land on another `NULL` property. All I had to 
do was add `#include "config.h"` to all the affected files so every compilation 
unit sees the same struct



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to