Skip to content

GUACAMOLE-2234: Fix race condition in non-opaque layer clearing across display worker threads.#640

Merged
necouchman merged 1 commit intoapache:staging/1.6.1from
sschiffli:GUACAMOLE-2234-transparent-artifacts
Mar 1, 2026
Merged

GUACAMOLE-2234: Fix race condition in non-opaque layer clearing across display worker threads.#640
necouchman merged 1 commit intoapache:staging/1.6.1from
sschiffli:GUACAMOLE-2234-transparent-artifacts

Conversation

@sschiffli
Copy link
Contributor

Adding path_lock to guac_display_layer, acquired around the rect+cfill pair in guac_display_layer_clear_non_opaque(). The lock is per-layer, so workers on different layers are unaffected.

@necouchman
Copy link
Contributor

@sschiffli The build seems to be failing; however, it doesn't look like it's necessarily related to your changes, so many just a transient issue? I'll merge once I can figure out why that's failing and how to get through that.

@necouchman
Copy link
Contributor

-Sigh- We have a bit of a problem, here...

#ifndef FREERDP_VERSION_H
#define FREERDP_VERSION_H

#define FREERDP_VERSION_MAJOR 2
#define FREERDP_VERSION_MINOR 11
#define FREERDP_VERSION_REVISION 8
#define FREERDP_VERSION_SUFFIX "dev"
#define FREERDP_API_VERSION "2"
#define FREERDP_VERSION "2.11.8"
#define FREERDP_VERSION_FULL "2.11.8-dev"
#define GIT_REVISION "2.11.8"

#endif /* FREERDP_VERSION_H */

Apparently when the FreeRDP team released the most recent version of FreeRDP, they left the -dev on the end of the version:

https://github.com/FreeRDP/FreeRDP/blob/9b678b6d5a40ce01607d8c3b1b1416437c8416c4/CMakeLists.txt#L88

I've posted a discussion question to ask if there's a reason they didn't drop it.

@mike-jumper Thoughts on the best way to handle this one?

@mike-jumper
Copy link
Contributor

Is there a macro in the FreeRDP version information header that includes the git hash? We could build in an exception for this specific version.

Otherwise, I'd say we could turn the dev version check into a warning and just make sure that the warning shows up at the end of the configure summary (so users will see it).

@necouchman
Copy link
Contributor

Is there a macro in the FreeRDP version information header that includes the git hash? We could build in an exception for this specific version.

I do not see one, no.

Otherwise, I'd say we could turn the dev version check into a warning and just make sure that the warning shows up at the end of the configure summary (so users will see it).

Okay, may just change the AC_MSG_ERROR to AC_MSG_WARN. I'll put in a Jira ticket and pull request for it.

@necouchman
Copy link
Contributor

@sschiffli If you can rebase on top of the current staging/1.6.1 branch, this will hopefully fix the build check and we can get this merged.

@sschiffli sschiffli force-pushed the GUACAMOLE-2234-transparent-artifacts branch from 8db5f79 to 89cff7b Compare March 1, 2026 14:46
@sschiffli
Copy link
Contributor Author

Thanks for the quick build fix, rebase done!

@necouchman necouchman merged commit b033bd1 into apache:staging/1.6.1 Mar 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants