Subject: FvwmPager crashes

From: Kent Howard <[email-masked]>
Date: Tue, 2 Mar 1999 18:46:30 -0800

Don't have time to check into this right now but it seems that
FvwmPager crashes if the user is moving a mini-window (with
button 2) and the window is destroyed.

- Kent
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [email-masked].
To report problems, send mail to [email-masked]

---

From: Dominik Vogt <[email-masked]>
Date: Thu, 4 Mar 1999 23:00:13 +0100

> button 2) and the window is destroyed.

Right. XConfigureWindow generates an X error which is handled
by FvwmErrorHandler in x_pager.c:

  XErrorHandler FvwmErrorHandler(Display *dpy, XErrorEvent *event)
  {
  #if 0
    Window root;
    unsigned border_width, depth;
    int x,y;
  
    if(XGetGeometry(dpy,Scr.Pager_w,&root,&x,&y,
                    (unsigned *)&window_w,(unsigned *)&window_h,
                    &border_width,&depth)==0)
      {
        exit(0);
      }
  
    return 0;
  #else
    /* really should just exit here... */
    fprintf(stderr,"%s: XError!  Bagging out!\n",MyName);
    exit(0);
  #endif /* 0 */
  }

Looks like another one of these error handling patches
that break more than they fix. In my eyes the right
thing would be to ignore all errors (and hope this doesn't
cause the pager to crash somewhere). If the pager window
was destroyed and fvwm has died or broken the connection,
wouldn't the broken pipe be caught in a signal handler?
So why should we need to exit here?

Bye

Dominik

--
Dominik Vogt, [email-masked]
Reply-To: [email-masked]