This is the mail archive of the cygwin-apps@cygwin.com 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: [setup] [PATCH] Redirect stdin from /dev/null when running postinstall scripts


Reini Urban wrote:
Max Bowsher schrieb:
Igor Pechtchanski wrote:
The patch below redirects stdin from /dev/null when running postinstall
scripts, so that installation doesn't hang if a program called from a
postinstall script decides to ask the user something.  AFAICS, this is
against the CVS HEAD.
Igor
==============================================================================

ChangeLog:
2004-09-13  Igor Pechtchanski  <pechtcha@cs.nyu.edu>

* script.cc (run): Kill stdin when running scripts.


Index: script.cc =================================================================== RCS file: /cvs/cygwin-apps/setup/script.cc,v retrieving revision 2.16 diff -u -p -r2.16 script.cc --- script.cc 12 Apr 2003 13:35:03 -0000 2.16 +++ script.cc 13 Sep 2004 18:06:17 -0000 @@ -178,7 +178,7 @@ run (const char *sh, const char *args, c { inheritHandles = TRUE; si.dwFlags |= STARTF_USESTDHANDLES; - si.hStdInput = GetStdHandle (STD_INPUT_HANDLE); + si.hStdInput = INVALID_HANDLE_VALUE; si.hStdOutput = file_out.handle (); si.hStdError = file_out.handle (); si.dwFlags |= STARTF_USESHOWWINDOW;


I tried to test this patch, but I wasn't able to reproduce the hang even
before applying it !?
Could you explain how to reproduce the hang?

put a read in any postinstall script (expecting user-input)

That's what I did!


I'm using WinXP - what's your OS?

Is there anything about your environment which could cause setup to have a non-functional but block-on-able stdin?

Max.


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