summaryrefslogtreecommitdiff
path: root/print/xpdf/patches
diff options
context:
space:
mode:
authorghen <ghen@pkgsrc.org>2005-12-20 16:00:16 +0000
committerghen <ghen@pkgsrc.org>2005-12-20 16:00:16 +0000
commit7ac0365057e87b811e15bf1926542e987f2f52b2 (patch)
tree8ada3be4e08f2b6f6afea5b1e9f21b2e6fbb64e9 /print/xpdf/patches
parent74ff322ae8ee6a941fa6478cd83d2a59f1515761 (diff)
downloadpkgsrc-7ac0365057e87b811e15bf1926542e987f2f52b2.tar.gz
Fix window resizing bug,
from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=324172 Bump PKGREVISION. Ok by joerg, wiz, dillo.
Diffstat (limited to 'print/xpdf/patches')
-rw-r--r--print/xpdf/patches/patch-au38
1 files changed, 38 insertions, 0 deletions
diff --git a/print/xpdf/patches/patch-au b/print/xpdf/patches/patch-au
new file mode 100644
index 00000000000..9d3c33e4a0e
--- /dev/null
+++ b/print/xpdf/patches/patch-au
@@ -0,0 +1,38 @@
+$NetBSD: patch-au,v 1.1 2005/12/20 16:00:16 ghen Exp $
+
+--- xpdf/XPDFCore.cc.orig 2005-12-20 13:30:48.000000000 +0100
++++ xpdf/XPDFCore.cc
+@@ -975,6 +975,9 @@ void XPDFCore::resizeCbk(Widget widget,
+ XPDFCore *core = (XPDFCore *)ptr;
+ XEvent event;
+ Widget top;
++ Window rootWin;
++ int x1, y1;
++ Guint w1, h1, bw1, depth1;
+ Arg args[2];
+ int n;
+ Dimension w, h;
+@@ -982,15 +985,20 @@ void XPDFCore::resizeCbk(Widget widget,
+
+ // find the top-most widget which has an associated window, and look
+ // for a pending ConfigureNotify in the event queue -- if there is
+- // one, that means we're still resizing, and we want to skip the
+- // current event
++ // one, and it specifies a different width or height, that means
++ // we're still resizing, and we want to skip the current event
+ for (top = core->parentWidget;
+ XtParent(top) && XtWindow(XtParent(top));
+ top = XtParent(top)) ;
+ if (XCheckTypedWindowEvent(core->display, XtWindow(top),
+ ConfigureNotify, &event)) {
+ XPutBackEvent(core->display, &event);
+- return;
++ XGetGeometry(core->display, event.xconfigure.window,
++ &rootWin, &x1, &y1, &w1, &h1, &bw1, &depth1);
++ if ((Guint)event.xconfigure.width != w1 ||
++ (Guint)event.xconfigure.height != h1) {
++ return;
++ }
+ }
+
+ n = 0;