Mike Jumper created GUACAMOLE-2061: -------------------------------------- Summary: guac_display_notify_user_moved_mouse() can block processing of "sync" Key: GUACAMOLE-2061 URL: https://issues.apache.org/jira/browse/GUACAMOLE-2061 Project: Guacamole Issue Type: Bug Components: libguac, RDP, VNC Affects Versions: 1.6.0 Reporter: Mike Jumper Assignee: Mike Jumper Fix For: 1.6.0
The {{guac_display_notify_user_moved_mouse()}} function necessarily locks the pending frame state, but this means that any current processing of the pending frame can potentially block the caller of {{guac_display_notify_user_moved_mouse()}}, typically the "mouse" instruction handler. Since instructions are handled in the order they are received, processing of other instructions like "sync" will be delayed. Delays in processing "sync" will be interpreted as client-side delays in _sending_ "sync" (this is the "processing lag" calculation), thus producing a feedback loop of increasing frame duration until updates slow to a crawl. Once things settle, updates resume as normal. Usage or implementation of {{guac_display_notify_user_moved_mouse()}} will need to be adjusted such that it cannot appreciably block processing of "sync". -- This message was sent by Atlassian Jira (v8.20.10#820010)