Commit Graph

16 Commits

Author SHA1 Message Date
Ryan Prichard
6f77ca472d CreateProcess can duplicate standard handles in another instance 2015-10-25 23:18:03 -05:00
Ryan Prichard
649bdad6e2 Documentation updates 2015-10-25 20:54:50 -05:00
Ryan Prichard
ff5be78af6 Rename the "default inheritance" concept to "duplicate". 2015-10-25 20:36:01 -05:00
Ryan Prichard
0b2e0c20ee Document DETACHED_PROCESS behavior and add a test for it. 2015-10-25 20:30:21 -05:00
Ryan Prichard
7ad3f28f48 Rewording in console-handles.md. 2015-10-25 19:35:30 -05:00
Ryan Prichard
4b76f1e3a7 Rework standard handle setting in CreateProcess documentation.
I don't *think* this changes the semantics at all.

Also, move the INVALID_HANDLE_VALUE thing into a note at the bottom.

Improve intra-document bug linking.
2015-10-25 18:56:22 -05:00
Ryan Prichard
955b5c61c3 Fix CreateProcess_UseStdHandles on Win8 and fix the spec.
* The NULL-to-new-handle conversion only happens when creating a new
   console, not when attaching to the parent's console.

 * Also, Windows reports that the handle value 0x7 is value, presumably
   because it ignores the lowest 2 bits.  It's better to just remove those
   values from this test.
2015-10-25 17:37:06 -05:00
Ryan Prichard
84e6822635 Rename SpecialInherit to DefaultInherit and add another test case
* Improve documentation for default inheritance mode, esp. w.r.t.
   console handles.
2015-10-25 00:28:58 -05:00
Ryan Prichard
7c5c22c007 Clarifications to console-handles.md. 2015-10-24 05:17:50 -05:00
Ryan Prichard
9b4155eccc Add a test for what seems to be an obscure Windows XP bug.
* The read end of a pipe is translated to NULL by the special
   bInheritHandles=FALSE, no-STARTF_USESTDHANDLES inheritance mode.  The
   write end of the pipe works fine.

 * Passing bInheritHandles=TRUE with an inheritable pipe handle fixes it.
   Adding STARTF_USESTDHANDLES to this also works.
2015-10-24 04:06:46 -05:00
Ryan Prichard
f635afacaf Windows 8.1 fixed the INVALID_HANDLE_VALUE --> process handle bug.
* To version detect 8.1, we need GetVersionEx to return something greater
   than Windows 8, which requires creating an app manifest.  For now at
   least, put the manifest XML next to the EXE.  It can be built into the
   EXE, but this is good enough (at least for now).
2015-10-24 02:31:46 -05:00
Ryan Prichard
7de7c6f76b Clarify document a bit. 2015-10-23 23:41:24 -05:00
Ryan Prichard
7e7b992cd6 Checkpoint a lot of work on the console-handles.md document. 2015-10-23 23:27:00 -05:00
Ryan Prichard
5ef3aa3a0b Remove an unnecessary line from the Vista BSOD test case. 2015-10-23 00:00:35 -05:00
Ryan Prichard
e3a148ccf5 Add notes on CREATE_NO_WINDOW to console-handles.md. 2015-10-22 18:48:48 -05:00
Ryan Prichard
c3484b5355 First draft of console-handles.md. 2015-10-22 17:34:05 -05:00