This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: run.exe fails to start XWin on Windows 8.1 through the shortcut

On 12/08/2015 13:43, Jaakov Jaakov wrote:

XWin fails to start again (previously reported half a year ago or so).

Thanks for following up on this.

The command issued by a shortcut is
C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd;
Upon starting the shortcut, there is some disc acitivty, but no window
opens, and no XWin processes show up (according to the later-called Task
No files in the directory /var/log/xwin are updated.
The file C:\cygwin64\run.exe.stackdump is generated, containing
Stack trace:

mumble mumble abracadabra!

0x000000018007256a    signal_exit                                           
0x0000000180073d33    _cygtls::call_signal_handler()                        
0x000000018012dfef    sig_send(_pinfo*, siginfo_t&, _cygtls*)               
0x000000018012ad90    _pinfo::kill(siginfo_t&)                              
0x000000018012b259    kill0                                                 
0x000000018012b42c    raise                                                 
0x000000018012b6ef    abort                                                 
0x00000001801612da    dlfree                                                
0x00000001800cd933    free                                                            sync.h:36
0x0000000180126d5b    ??                                                              sigfe.s:43
0x00000001004011cc    file_exists_multi                                               run.c:877
0x0000000100404da8    main                                                            run.c:300
0x0000000180048410    dll_crt0_1(void*)                                     
0x00000001800460dc    _cygtls::call2(unsigned int (*)(void*, void*), void*, void*)
0x0000000180046174    _cygtls::call(unsigned int (*)(void*, void*), void*)  
0x00000001004036d1    cygwin_crt0                                                     cygwin_crt0.c:22


Not sure if this is the cause of this problem, but after a bit of staring at file_exists_multi(), I notice that run2_fileExits() doesn't initialize t when it returns FALSE, so perhaps the following is a good idea?

diff --git a/src/run.c b/src/run.c
index e88441b..0985571 100644
--- a/src/run.c
+++ b/src/run.c
@@ -880,7 +880,7 @@ file_exists_multi(char* fullname, const char* path,
     fullname[0] = '\0';
     for (i = 0; i < extcnt; i++)
-        char* t;
+        char* t = NULL;
         if ((run2_fileExists(&t, path, tryName) == TRUE) && t && *t)

Volunteer Cygwin/X X Server maintainer

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]