summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin')
-rw-r--r--winsup/cygwin/ChangeLog11
-rw-r--r--winsup/cygwin/fhandler_console.cc4
-rw-r--r--winsup/cygwin/fhandler_process.cc2
-rw-r--r--winsup/cygwin/spawn.cc3
4 files changed, 16 insertions, 4 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index f388ca76f..a26345f70 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,16 @@
2006-01-03 Christopher Faylor <cgf@timesys.com>
+ * fhandler_process.cc (fhandler_process::readdir): Add missing argument
+ to syscall_printf.
+
+ * fhandler_console.cc (fhandler_console::need_invisible): Use made-up
+ name for windows station rather than asking Windows to create one for
+ us.
+
+ * spawn.cc (spawn_guts): Don't mess with console if we're detaching.
+
+2006-01-03 Christopher Faylor <cgf@timesys.com>
+
* dir.cc (readdir_worker): Minor code cleanup.
* fhandler_console.cc (beep): Use a more Windows-generic wav file if
diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc
index 431886352..c10098b58 100644
--- a/winsup/cygwin/fhandler_console.cc
+++ b/winsup/cygwin/fhandler_console.cc
@@ -1856,8 +1856,8 @@ fhandler_console::need_invisible ()
h = horig = GetProcessWindowStation ();
if (myself->ctty == -1)
{
- h = CreateWindowStation (NULL, 0, WINSTA_ALL_ACCESS, &sec_none_nih);
- termios_printf ("CreateWindowStation %p, %E", h);
+ h = CreateWindowStation ("CygwinInvisible", 0, WINSTA_ALL_ACCESS, &sec_none_nih);
+ termios_printf ("CreateWindowStation(\"CygwinInvisible\", %p), %E", h);
if (h)
{
b = SetProcessWindowStation (h);
diff --git a/winsup/cygwin/fhandler_process.cc b/winsup/cygwin/fhandler_process.cc
index 253bd4dd9..cb7d9072d 100644
--- a/winsup/cygwin/fhandler_process.cc
+++ b/winsup/cygwin/fhandler_process.cc
@@ -229,7 +229,7 @@ fhandler_process::readdir (DIR *dir, dirent *de)
strcpy (de->d_name, process_listing[dir->__d_position++]);
res = 0;
out:
- syscall_printf ("%d = readdir (%p, %p) (%s)", dir, de, de->d_name);
+ syscall_printf ("%d = readdir (%p, %p) (%s)", res, dir, de, de->d_name);
return res;
}
diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc
index 23b0ca5d1..9f9659501 100644
--- a/winsup/cygwin/spawn.cc
+++ b/winsup/cygwin/spawn.cc
@@ -616,7 +616,8 @@ spawn_guts (const char * prog_arg, const char *const *argv,
ProtectHandle (cygheap->pid_handle);
else
system_printf ("duplicate to pid_handle failed, %E");
- set_console_state_for_spawn (real_path.iscygexec ());
+ if (mode != _P_DETACH)
+ set_console_state_for_spawn (real_path.iscygexec ());
}
/* Some file types (currently only sockets) need extra effort in the parent