Bug 337 - Rdesktop doesn't support the INCR protocol when transferring clipboard data.
: Rdesktop doesn't support the INCR protocol when transferring clipboard data.
: ThinLinc
| rdesktop (deprecated)
: trunk
: PC Linux
: P2 Enhancement
: 4.10.0
Assigned To:
: 491 5336
  Show dependency treegraph
Reported: 2003-08-20 16:52 by
Modified: 2019-02-07 15:51 (History)
Acceptance Criteria:

Patch from Burt. Makes INCR work better, but not perfect. (1.03 KB, patch)
2005-11-08 09:13, Erik Forsberg


You need to log in before you can comment on or make changes to this bug.

Description From cendio 2003-08-20 16:52:31
Rdesktop doesn't support the INCR protocol (defined in the ICCCM), which is
needed for really large clipboard transfers.
------- Comment #1 From cendio 2004-04-01 09:41:01 -------
Complicated bug, retargeting.
------- Comment #2 From cendio 2004-11-08 11:52:10 -------
One simple solution could be to pop up a dialog that says the the clip text is
too large. 
------- Comment #3 From cendio 2004-11-22 14:36:23 -------
AFAIK, we haven't heard anyone complaining on not being able to move large
clipboard data chunks. My suggestion is that we move this to 'Future/Ondemand'.
------- Comment #4 From cendio 2004-11-22 15:11:27 -------
On the other hand, we'll probably have to fix this in order to be able to fix
bug 491.
------- Comment #5 From cendio 2004-11-23 14:14:36 -------
Supporting the INCR protocol is not trivial, but it should be doable.

Basically, when a requestor wants clipboard data from rdesktop, rdesktop should
respond with a property of type INCR containg a number that represents the size
of the clipboard data. The requestor deletes the property which signals to
rdesktop (via a PropertyNotify) that the data transfer should start. Rdesktop
should then send data in suitable chunks to the property named by the requestor
in the initial ConvertSelection call and wait for new PropertyNotify signals. To
end data transfer, a zero-sized data chunk is written to the property on the

We're already listening for PropertyChange, so in theory, we should be able to
extend xclip_handle_PropertyNotify and make it send data with INCR. At least,
that's my initial idea.

The other case, receiving data via INCR from other X clients must also be covered. 

Of course, synchronization with the clipboard mechanism of Windows must also
happend, either simply by buffering all data before sending, or more
complicated, by actually sending data as it comes in. One problem might be that
the package size for intermediate Windows clipboard data might be incompatible
with the size of the data received from other clients, so we'll probably have to
buffer anyway.

As a beginning for implementation of this, we need to find other X programs that
behave good so we have something to test against.
------- Comment #6 From cendio 2004-11-23 14:55:03 -------
Later, now that bug 491 has been moved. 
------- Comment #7 From cendio 2005-06-27 14:22:43 -------
INCR support has been implemented by Burt Holzman. I've applied the patch to
rdesktop. A new snapshot has been imported to the ctc tree. 

During the 1.4.1 testing, we should verify that INCR works. 
------- Comment #8 From cendio 2005-10-13 11:45:38 -------
I tried to cut'n paste a really large piece of text from OOo to winword on

Doesn't work, winword hangs with a hourglass for a very long time. 

I'll reopen and retarget to 1.5.0, so we can bugreport and/or find a solution.
------- Comment #9 From cendio 2005-10-31 17:12:52 -------
We should checkout

------- Comment #10 From cendio 2005-11-07 13:29:38 -------
The link in comment#9 is about a patch where the author specifically says
"Didn't touch INCR", so it probably wont help :-).
------- Comment #11 From cendio 2005-11-08 09:13:05 -------
Got a patch from Burt Holzman, which makes things work better, although not
perfect. The last lines of the area doesn't get transferred. I've reported this
back to Burt. 
------- Comment #12 From cendio 2005-11-08 09:13:54 -------
Created an attachment (id=149) [details]
Patch from Burt. Makes INCR work better, but not perfect.
------- Comment #13 From cendio 2005-11-10 10:03:01 -------
Got another patch from Burt that makes earlier failing test case succeed. I've
commited this to rdesktop cvs.

There are still trouble when doing large INCR using native windows clipboard
formats. Burt said he would try to look into this in the near future. 
------- Comment #14 From cendio 2005-11-15 17:47:02 -------
Most of the work is done by people on the rdesktop list, we're only testing and
commiting their code.
------- Comment #15 From cendio 2014-11-14 11:55:45 -------
Looks like we can send INCR, but not receive it. Need to finish this.
------- Comment #16 From cendio 2019-02-07 15:42:44 -------
rdesktop (and associated tools) is being removed from the ThinLinc product.