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: Spawnvp on pwd.exe and mkdir.exe fails


Larry Hall (Cygwin <reply-to-list-only-lh <at> cygwin.com> writes:

> 
> Brian Kramer wrote:
> > I have a simple C++ file I am using to spawn pwd.exe and mkdir.exe.  These 
are 
> > causing stackdumps.  Can anyone help me resolve this?  ls.exe does not 
cause a 
> > stackdump.
> > 
> > The same C++ file compiles using Visual Studio and the output is as 
expected.  
> > 
> > In particular on Windows:
> > pid=1996
> > /cygdrive/e/tempprojects/pwd/Debug
> > done
> > 
> > And under cygwin:
> > pid=5860
> > (pwd.exe.stackdump written)
> > done
> > 
> > Here's my program:
> > 
> > #include <process.h>
> > #include <stdio.h>
> > 
> > int main()
> > {
> >     char* argv[] = {"pwd.exe", 0};
> >     int pid = spawnvp( _P_NOWAIT, argv[0], argv );
> >     printf("pid=%d\n",pid);
> > 
> >     int termstat;
> >     cwait( &termstat, pid, WAIT_CHILD );
> >     printf("done\n");
> > 
> >     return 0;       
> > }
> 
> You should include the path to "pwd.exe" (i.e. "/bin/pwd.exe").  If this
> doesn't solve your problem, I suggest you read and follow the problem
> reporting guidelines found here:
> 
> > Problem reports:       http://cygwin.com/problems.html
> 
> FWIW, with the correction I suggested, this works fine for me with Cygwin
> 1.5.19.
> 

Hi, Larry.  Thanks for your prompt Sunday night reply!

I tried that also.  Note that "ls.exe" gives the correct result:
pid=1312
    E:\tempprojects\pwd\*.*
[Debug]                              pwd.suo*
a.exe                                pwd.vcproj
pwd.cpp                              pwd.vcproj.BKRAMERHOME.bkramer.user
pwd.exe.stackdump                    ReadMe.txt
pwd.ncb                              stdafx.cpp
pwd.sln                              stdafx.h
    434176 (400541) bytes in 11 files
done

I normally have c:\cygwin\bin on the path, which is why using "/bin/ls.exe" 
and "ls.exe" both work.

I upgraded to Cygwin 1.5.19 today to see if that helped on my real cases 
("pwd.exe" and "mkdir.exe"), and it did not.  The interesting this is that 
this code used to work just fine: something "happened" and I would't know how 
to start diagnosing this issue...

Did you run the example I gave?  

A clean reinstall of Cygwin, perhaps?

Brian






--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


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