aboutsummaryrefslogtreecommitdiff
path: root/src/libdraw
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2006-03-10 00:37:15 +0000
committerrsc <devnull@localhost>2006-03-10 00:37:15 +0000
commitb9b653584e8622fc5d23e8f761a88b415f2f0167 (patch)
tree34ecd27e8cd15d8accd3fa363c1c42195c5d7951 /src/libdraw
parente03f2c40696291e806b38fbc372c51f0556179cc (diff)
downloadplan9port-b9b653584e8622fc5d23e8f761a88b415f2f0167.tar.gz
plan9port-b9b653584e8622fc5d23e8f761a88b415f2f0167.tar.bz2
plan9port-b9b653584e8622fc5d23e8f761a88b415f2f0167.zip
synergy (paul lalonde)
Diffstat (limited to 'src/libdraw')
-rw-r--r--src/libdraw/x11-itrans.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libdraw/x11-itrans.c b/src/libdraw/x11-itrans.c
index bc8dc218..538028da 100644
--- a/src/libdraw/x11-itrans.c
+++ b/src/libdraw/x11-itrans.c
@@ -516,14 +516,18 @@ if(0) fprint(2, "xselect target=%d requestor=%d property=%d selection=%d\n",
XChangeProperty(xd, xe->requestor, xe->property, xe->target,
8, PropModeReplace, (uchar*)a, sizeof a);
- }else if(xe->target == XA_STRING || xe->target == _x.utf8string || xe->target == _x.text || xe->target == _x.compoundtext){
+ }else if(xe->target == XA_STRING
+ || xe->target == _x.utf8string
+ || xe->target == _x.text
+ || xe->target == _x.compoundtext
+ || ((name = XGetAtomName(xd, xe->target)) && strcmp(name, "text/plain;charset=UTF-8") == 0)){
+ /* text/plain;charset=UTF-8 seems nonstandard but is used by Synergy */
/* if the target is STRING we're supposed to reply with Latin1 XXX */
qlock(&clip.lk);
XChangeProperty(xd, xe->requestor, xe->property, xe->target,
8, PropModeReplace, (uchar*)clip.buf, strlen(clip.buf));
qunlock(&clip.lk);
}else{
- name = XGetAtomName(xd, xe->target);
if(strcmp(name, "TIMESTAMP") != 0)
fprint(2, "%s: cannot handle selection request for '%s' (%d)\n", argv0, name, (int)xe->target);
r.xselection.property = None;