summaryrefslogtreecommitdiff
path: root/x11
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2007-06-08 17:49:54 +0000
committerwiz <wiz@pkgsrc.org>2007-06-08 17:49:54 +0000
commit52d5d9bb18750e9ef5b30e0cc960811ad2cac25d (patch)
treebeda04d5ec3aaceb2e6c425910cbfb8e6ebe7d13 /x11
parent810723d033137e20d8fa2a1a4cbec7e22429875f (diff)
downloadpkgsrc-52d5d9bb18750e9ef5b30e0cc960811ad2cac25d.tar.gz
Sergey Svishchev writes (in PR 33255), providing a patch:
kde uses the X clipboard's content negotiation features, which almost nobody else does, but xclip was doing the wrong thing when asked for content negotiation stuff (from Debian bug report 172812). Bump PKGREVISION.
Diffstat (limited to 'x11')
-rw-r--r--x11/xclip/Makefile4
-rw-r--r--x11/xclip/distinfo3
-rw-r--r--x11/xclip/patches/patch-aa58
3 files changed, 62 insertions, 3 deletions
diff --git a/x11/xclip/Makefile b/x11/xclip/Makefile
index 4993c65f825..0f020a8fccc 100644
--- a/x11/xclip/Makefile
+++ b/x11/xclip/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.10 2006/12/27 13:37:43 joerg Exp $
+# $NetBSD: Makefile,v 1.11 2007/06/08 17:49:54 wiz Exp $
#
DISTNAME= xclip-0.08
-PKGREVISION= 2
+PKGREVISION= 3
CATEGORIES= x11
MASTER_SITES= http://people.debian.org/~kims/xclip/
diff --git a/x11/xclip/distinfo b/x11/xclip/distinfo
index 4bd633aed0c..d0f1c757292 100644
--- a/x11/xclip/distinfo
+++ b/x11/xclip/distinfo
@@ -1,5 +1,6 @@
-$NetBSD: distinfo,v 1.2 2005/02/23 17:36:21 wiz Exp $
+$NetBSD: distinfo,v 1.3 2007/06/08 17:49:54 wiz Exp $
SHA1 (xclip-0.08.tar.gz) = 2b20daab0523a2b4b2cab1f24887481556eadb8b
RMD160 (xclip-0.08.tar.gz) = 644c0418b44ce533fd39e37ec2dd888a394e8f7d
Size (xclip-0.08.tar.gz) = 27914 bytes
+SHA1 (patch-aa) = 4a9039454a8494f398daa1dbaae52014d8d5d4dc
diff --git a/x11/xclip/patches/patch-aa b/x11/xclip/patches/patch-aa
new file mode 100644
index 00000000000..d42959d0dfa
--- /dev/null
+++ b/x11/xclip/patches/patch-aa
@@ -0,0 +1,58 @@
+$NetBSD: patch-aa,v 1.1 2007/06/08 17:49:54 wiz Exp $
+
+KDE integration (from Debian bug 172812)
+
+--- xclib.c.orig Mon Dec 17 01:14:40 2001
++++ xclib.c Thu Dec 12 13:16:57 2002
+@@ -100,7 +100,7 @@
+ )
+ {
+ /* a property for other windows to put their selection into */
+- Atom pty, inc, pty_type;
++ Atom pty, inc, pty_type, targets;
+ int pty_format;
+
+ /* buffer for XGetWindowProperty to dump data into */
+@@ -111,6 +111,7 @@
+ unsigned char *ltxt;
+
+ pty = XInternAtom(dpy, "XCLIP_OUT", False);
++ targets = XInternAtom(dpy, "TARGETS", False);
+
+ switch (*context)
+ {
+@@ -353,7 +354,9 @@
+ * transfers only)
+ */
+ XEvent res; /* response to event */
+- Atom inc;
++ Atom inc, targets;
++
++ targets = XInternAtom(dpy, "TARGETS", False);
+
+ switch (*context)
+ {
+@@ -369,7 +372,22 @@
+ *pos = 0;
+
+ /* put the data into an property */
+- if (len > XC_CHUNK)
++ if (evt.xselectionrequest.target == targets)
++ {
++ Atom types[2] = { targets, XA_STRING };
++
++ /* send data all at once (not using INCR) */
++ XChangeProperty(
++ dpy,
++ *win,
++ *pty,
++ targets,
++ 8,
++ PropModeReplace,
++ (unsigned char*) types,
++ (int)sizeof(types)
++ );
++ } else if (len > XC_CHUNK)
+ {
+ /* INCR Atom to set response property to */
+ inc = XInternAtom(dpy, "INCR", False);