help-emacs-windows
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [h-e-w] emacsclientw.exe bug: random exit status


From: Lennart Borgman
Subject: Re: [h-e-w] emacsclientw.exe bug: random exit status
Date: Fri, 25 Sep 2009 00:32:22 +0200

Eh, or no. Is not the code below from an older version of emacsclient?


On Fri, Sep 25, 2009 at 12:07 AM, Lennart Borgman
<address@hidden> wrote:
> On Fri, Sep 25, 2009 at 12:04 AM, Gary Oberbrunner <address@hidden> wrote:
>> emacsclientw exits with a random exit status when called from a win32 window 
>> app (such as emacs itself).  The reason is an uninitialized variable in 
>> w32_teardown_window in w32emacsclient.h.  I suspect if "ret" is initialized 
>> to zero (exit status success) in this function it would just work.  I don't 
>> have mingw so I can't compile it here myself, sorry.
>>
>> This is on emacs 23.1.50, also happens on the latest CVS test version.  I'm 
>> using the EmacsW32 patched version on XP, but don't think that matters 
>> either.
>
> It does in this case. Thanks for the fix below, I will apply it to
> EmacsW32. (The standard emacsclientw.exe does not have any windows.)
>
>
>> The symptom is easy to reproduce.  In a shell window inside emacs (I use 
>> cygwin zsh, but any shell will work), run
>>  emacsclient foo || echo BAD
>> then C-x # to close the server buffer, and then look back in the shell 
>> window:
>> % emacsclientw foo || echo BAD
>> Waiting for Emacs...
>> BAD
>> %
>>
>> (I'm sure you already know that "emacsclient", the non-windows version, is 
>> totally broken, gives "Unknown&_command:&"... but emacsclientw is fine so it 
>> doesn't really matter.)
>>
>> Here's the affected code:
>> ===========
>> int
>> w32_teardown_window (int connected)
>> {
>>  int ret;                    <<<<<<<<<<====== FIX HERE to int ret=0;
>>  if (w32_window_app ())
>>    {
>>      w32_check_not_synced();
>>      w32_wait_threads_fin(connected);
>>      ret = W32_SYNC_get_g_exit_value();
>>      DeleteCriticalSection(&g_cs.cs);
>>      return ret;
>>    }
>>  else
>>    ret = g_exit_value;
>>  return ret;
>> }
>> ============
>>
>>
>> --
>> . . . . . . . . . . . . . . . . . . . . . . . . .
>> Gary Oberbrunner               address@hidden
>> GenArts, Inc.                   Tel: 617-492-2888
>> 955 Mass. Ave                   Fax: 617-492-2852
>> Cambridge, MA 02139 USA         www.genarts.com
>>
>>
>>
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]