* dcrt0.cc (get_cygwin_startup_info): Change zeros to DWORD array.

Expect first DWORD in child_info struct being set to non-zero if
	wincap.needs_count_in_si_lpres2 is set.  Add comment to explain why.
	* fork.cc (frok::parent): Set ch.zero[0] to a sensible count value
	if wincap.needs_count_in_si_lpres2 is set.
	* spawn.cc (spawn_guts): Ditto.  Add filler bytes after ch on stack
	to accomodate needs_count_in_si_lpres2.
	* wincap.h: Define needs_count_in_si_lpres2 throughout.
	* wincap.cc: Ditto.
This commit is contained in:
Corinna Vinschen
2006-12-05 10:59:21 +00:00
parent 489bb390ce
commit c6674b53d3
6 changed files with 71 additions and 2 deletions

View File

@@ -71,6 +71,7 @@ struct wincaps
unsigned has_buggy_restart_scan : 1;
unsigned has_mandatory_integrity_control : 1;
unsigned needs_logon_sid_in_sid_list : 1;
unsigned needs_count_in_si_lpres2 : 1;
};
class wincapc
@@ -148,6 +149,7 @@ public:
bool IMPLEMENT (has_buggy_restart_scan)
bool IMPLEMENT (has_mandatory_integrity_control)
bool IMPLEMENT (needs_logon_sid_in_sid_list)
bool IMPLEMENT (needs_count_in_si_lpres2)
#undef IMPLEMENT
};