45ea0014dc
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=324172 Approved by: nork (maintainer) Obtained from: Debian
36 lines
1.2 KiB
Text
36 lines
1.2 KiB
Text
--- xpdf/XPDFCore.cc 2005-10-10 23:33:08.000000000 +1000
|
|
+++ xpdf/XPDFCore.cc 2005-10-10 23:33:44.000000000 +1000
|
|
@@ -975,6 +975,9 @@
|
|
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 @@
|
|
|
|
// 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;
|