Package: fvwm
Version: 1:2.5.23-2
Severity: normal
Tags: patch

Hi,

I reported a FVWM crash to the FVWM-ML which got fixed already upstream:
http://www.mail-archive.com/[EMAIL PROTECTED]/msg16265.html

Could you add the patch, since this bug crashes FVWM for me, when the
situation happens. I am not sure, when a new upstream release will get out.

Thanks
Philipp

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.24-1-686-bigmem (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages fvwm depends on:
ii  debconf [debconf-2.0]  1.5.19            Debian configuration management sy
ii  gdk-imlib11            1.9.15-5          imaging library for use with gtk
ii  libc6                  2.7-6             GNU C Library: Shared libraries
ii  libcairo2              1.4.14-1          The Cairo 2D vector graphics libra
ii  libfontconfig1         2.5.0-2           generic font configuration library
ii  libfreetype6           2.3.5-1+b1        FreeType 2 font engine, shared lib
ii  libfribidi0            0.10.9-1          Free Implementation of the Unicode
ii  libglib1.2ldbl         1.2.10-19         The GLib library of C routines
ii  libglib2.0-0           2.14.5-2          The GLib library of C routines
ii  libgtk1.2              1.2.10-18.1       The GIMP Toolkit set of widgets fo
ii  libgtk2.0-0            2.12.5-2          The GTK+ graphical user interface 
ii  libice6                2:1.0.4-1         X11 Inter-Client Exchange library
ii  libncurses5            5.6+20080119-1    Shared libraries for terminal hand
ii  libpng12-0             1.2.15~beta5-3    PNG library - runtime
ii  libreadline5           5.2-3             GNU readline and history libraries
ii  librplay3              3.3.2-11          Shared libraries for the rplay net
ii  librsvg2-2             2.20.0-1          SAX-based renderer library for SVG
ii  libsm6                 2:1.0.3-1+b1      X11 Session Management library
ii  libstroke0             0.5.1-6           mouse strokes library -- runtime f
ii  libx11-6               2:1.0.3-7         X11 client-side library
ii  libxcursor1            1:1.1.9-1         X cursor management library
ii  libxext6               1:1.0.3-2         X11 miscellaneous extension librar
ii  libxft2                2.1.12-2          FreeType-based font drawing librar
ii  libxi6                 2:1.1.3-1         X11 Input extension library
ii  libxinerama1           1:1.0.2-1         X11 Xinerama extension library
ii  libxpm4                1:3.5.7-1         X11 pixmap library
ii  libxrender1            1:0.9.4-1         X Rendering Extension client libra
ii  zlib1g                 1:1.2.3.3.dfsg-11 compression library - runtime

Versions of packages fvwm recommends:
ii  fvwm-icons                  2001.08.13-6 XPMs icons from fvwm development s

-- debconf information:
* fvwm/upgrade/pre_2.5.8: true
Index: fvwm/ewmh_events.c
===================================================================
RCS file: /home/cvs/fvwm/fvwm/fvwm/ewmh_events.c,v
retrieving revision 1.57
retrieving revision 1.59
diff -u -r1.57 -r1.59
--- fvwm/ewmh_events.c	7 Aug 2007 20:17:43 -0000	1.57
+++ fvwm/ewmh_events.c	31 Jan 2008 09:09:45 -0000	1.59
@@ -185,23 +185,35 @@
 int ewmh_MoveResizeWindow(EWMH_CMD_ARGS)
 {
 	XConfigureRequestEvent cre;
-	int func;
+	int do_reconfigure;
 
 	if (ev == NULL)
 	{
 		return 0;
 	}
-	if (
-		ev->xclient.data.l[3] == fw->g.normal.width &&
-		ev->xclient.data.l[4] == fw->g.normal.height)
+	if (fw == NULL)
 	{
-		func = F_MOVE;
+		/* unmanaged window */
+		do_reconfigure = 1;
 	}
 	else
 	{
-		func = F_RESIZE;
+		int func;
+
+		if (
+			ev->xclient.data.l[3] == fw->g.normal.width &&
+			ev->xclient.data.l[4] == fw->g.normal.height)
+		{
+			func = F_MOVE;
+		}
+		else
+		{
+			func = F_RESIZE;
+		}
+		do_reconfigure = !!is_function_allowed(
+			func, NULL, fw, RQORIG_PROGRAM, False);
 	}
-	if (!is_function_allowed(func, NULL, fw, RQORIG_PROGRAM, False))
+	if (do_reconfigure == 1)
 	{
 		cre.value_mask = ev->xclient.data.l[0];
 		cre.x = ev->xclient.data.l[1];
@@ -218,12 +230,22 @@
 int ewmh_RestackWindow(EWMH_CMD_ARGS)
 {
 	XConfigureRequestEvent cre;
+	int do_restack;
 
 	if (ev == NULL)
 	{
 		return 0;
 	}
-	if (DO_EWMH_USE_STACKING_HINTS(fw))
+	if (fw == NULL)
+	{
+		/* unmanaged window */
+		do_restack = 1;
+	}
+	else
+	{
+		do_restack = !!DO_EWMH_USE_STACKING_HINTS(fw);
+	}
+	if (do_restack == 1)
 	{
 		cre.value_mask = CWSibling | CWStackMode;
 		cre.above = ev->xclient.data.l[1];

Reply via email to