Renan Melhado created GUACAMOLE-521:
---------------------------------------

             Summary: PDF generated by Guacamole printer ends up corrupted if 
document is at least 18 pages long
                 Key: GUACAMOLE-521
                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-521
             Project: Guacamole
          Issue Type: Bug
          Components: guacd-docker
    Affects Versions: 0.9.14
         Environment: Running the official Docker containers from 
guacamole/guacamole:0.9.14 and guacamole/guacd:0.9.14
            Reporter: Renan Melhado
         Attachments: resize-guacamole-after-corrupted-pdf.png

When printing any document with at least 18 pages to the Guacamole printer, the 
resulting PDF ends up corrupted (Ghostscript crashes), and the RDP session is 
disconnected in the next window resize event.
 # Open a document with at least 18 pages, i.e. 
[https://docs.oracle.com/javase/7/docs/api/index-files/index-1.html]
 # Print the whole document with the Guacamole printer and try to open the 
resulting PDF file. It'll be corrupt.
 # Go back to the Guacamole RDP tab on the browser and resize the window to 
trigger the reconnect. The RDP session will be disconnected.

 
{code:java}
guacd[19]: INFO: Connected to RDPDR 1.12 as client 0x0048
guacd[19]: INFO: Ignoring server capability set type=0x0001, length=44
guacd[19]: INFO: Ignoring server capability set type=0x0002, length=8
guacd[19]: INFO: Ignoring server capability set type=0x0003, length=8
guacd[19]: INFO: Ignoring server capability set type=0x0004, length=8
guacd[19]: INFO: Ignoring server capability set type=0x0005, length=8
guacd[19]: INFO: Sending capabilities...
guacd[19]: INFO: Capabilities sent.
guacd[19]: INFO: Client ID confirmed
guacd[19]: INFO: User logged on
guacd[19]: INFO: Sending printer
guacd[19]: INFO: Registered device 0 (Guacamole Printer)
guacd[19]: INFO: Sending filesystem
guacd[19]: INFO: Registered device 1 (Guacamole Filesystem)
guacd[19]: INFO: All supported devices sent.
guacd[19]: INFO: Device 0 (Guacamole Printer) connected successfully
guacd[19]: INFO: Device 1 (Guacamole Filesystem) connected successfully
guacd[19]: DEBUG: guac_rdp_fs_open: path="", access=0x80, file_attributes=0x0, 
create_disposition=0x1, create_options=0x1
guacd[19]: DEBUG: guac_rdp_fs_open: Normalized path "\" to "\".
guacd[19]: DEBUG: guac_rdp_fs_open: Translated path "\" to "/opt/testdir/".
guacd[19]: DEBUG: guac_rdp_fs_open: native open: real_path="/opt/testdir/", 
flags=0x0
guacd[19]: DEBUG: guac_rdp_fs_open: Opened "\" as file_id=1
guacd[19]: DEBUG: guac_rdpdr_fs_process_create: [file_id=1] 
desired_access=0x80, file_attributes=0x0, create_disposition=0x1, 
create_options=0x1, path=""
guacd[19]: DEBUG: guac_rdp_fs_open: path="\Download", access=0x80000000, 
file_attributes=0x0, create_disposition=0x3, create_options=0x1
guacd[19]: DEBUG: guac_rdp_fs_open: Normalized path "\Download" to "\Download".
guacd[19]: DEBUG: guac_rdp_fs_open: Translated path "\Download" to 
"/opt/testdir/Download".
guacd[19]: DEBUG: guac_rdp_fs_open: native open: 
real_path="/opt/testdir/Download", flags=0x0
guacd[19]: DEBUG: guac_rdp_fs_open: Opened "\Download" as file_id=0
guacd[19]: DEBUG: guac_rdp_fs_close: Closed "\Download" (file_id=0)
guacd[19]: DEBUG: guac_rdpdr_fs_process_query_basic_info: [file_id=1]
guacd[19]: DEBUG: guac_rdpdr_fs_process_close: [file_id=1]
guacd[19]: DEBUG: guac_rdp_fs_close: Closed "\" (file_id=1)
guacd[19]: INFO: Print job created
guacd[19]: INFO: Created PDF filter process PID=29
guacd[19]: DEBUG: Reading output from filter process...
guacd[29]: INFO: Running gs
guacd[19]: DEBUG: Beginning print stream: 27-pages-file.pdf
guacd[19]: DEBUG: Sending 4750 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4081 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4113 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4082 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4240 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4146 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4174 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4164 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4483 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4263 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4430 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4499 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4174 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4418 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4373 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 4317 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 38 byte(s) of filtered output.
guacd[19]: DEBUG: Sending 3802 byte(s) of filtered output.
guacd[19]: ERROR: Error reading from filter: Bad file descriptor
guacd[19]: DEBUG: End of print stream.
guacd[19]: DEBUG: Print job completed.
GPL Ghostscript 9.07: Unrecoverable error, exit code 1
GPL Ghostscript 9.07: ERROR -12 closing pdfwrite device. See gs/psi/ierrors.h 
for code explanation.
guacd[19]: INFO: Unloading device 0 (Guacamole Printer)
guacd[19]: INFO: Unloading device 1 (Guacamole Filesystem)
guacd[19]: INFO: Internal RDP client disconnected{code}
 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to