[ 
https://issues.apache.org/jira/browse/GUACAMOLE-200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Jumper resolved GUACAMOLE-200.
--------------------------------------
    Resolution: Fixed

> read() in RDPDR printer can block user input
> --------------------------------------------
>
>                 Key: GUACAMOLE-200
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-200
>             Project: Guacamole
>          Issue Type: Bug
>          Components: RDP
>    Affects Versions: 0.9.10-incubating, 0.9.11-incubating
>            Reporter: Michael Jumper
>            Assignee: Michael Jumper
>            Priority: Critical
>             Fix For: 0.9.12-incubating
>
>
> Recent changes moved the RDP printer within Guacamole from asynchronous 
> transfer (independent of received "ack" messages) to synchronous transfer. 
> This is fine in itself, but the {{read()}} call pulling more data from 
> GhostScript in reponse to an "ack" actually occurs within the handler for 
> that "ack". If GhostScript is busy processing things and that {{read()}} 
> blocks, handling of user input as a whole gets blocked.
> The actual reads need to be moved into a printer-specific thread, with 
> receipt of "ack" signalling that more data should be read, allowing the ack 
> handler to finish regardless of GhostScript's state.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to