GNU bug report logs - #25875
26.0.50; Hang logging out of MS-Windows

Previous Next

Package: emacs;

Reported by: Richard Copley <rcopley <at> gmail.com>

Date: Sat, 25 Feb 2017 19:37:01 UTC

Severity: normal

Found in version 26.0.50

Done: Ken Brown <kbrown <at> cornell.edu>

Bug is archived. No further changes may be made.

Full log


Message #65 received at 25875 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Richard Copley <rcopley <at> gmail.com>
Cc: 25875 <at> debbugs.gnu.org, kbrown <at> cornell.edu
Subject: Re: bug#25875: 26.0.50; Hang logging out of MS-Windows
Date: Mon, 27 Feb 2017 17:36:23 +0200
> From: Richard Copley <rcopley <at> gmail.com>
> Date: Mon, 27 Feb 2017 08:14:22 +0000
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 25875 <at> debbugs.gnu.org
> 
> > Here's a quick and dirty attempt.  If I haven't made a mistake, it replaces
> > every relevant call to SendMessage by a call to SendMessageTimeout with a
> > 100ms timeout.
> >
> > --- a/src/w32term.c
> > +++ b/src/w32term.c
> > @@ -537,6 +537,15 @@ x_update_begin (struct frame *f)
> >  }
> >
> >
> > +#undef SendMessage
> > +#define SendMessage DebugSendMessage
> > +
> > +static LRESULT WINAPI
> > +DebugSendMessage (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
> > +{
> > +  return SendMessageTimeoutA (hWnd, Msg, wParam, lParam, 0, 100, NULL);
> > +}
> > +
> >  /* Start update of window W.  */
> >
> >  static void
> >
> > Ken
> 
> Sorry Ken, I can't sabotage myself like that, I have work to do.

This could be a misunderstanding: the above change is not supposed to
sabotage anything, it's supposed to be a 100% compatible change for
the current behavior when all threads are running, and also provide a
"fire escape" when the addressee of the message is for some reason
stuck, as we think happens in your scenario.

If you are unwilling to make such a sweeping change, could you at
least replace the call SendMessage in my_show_window with
SendMessageTimeoutA, using the above patch as a template?

TIA




This bug report was last modified 8 years and 85 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.