From 29992bf3dad77669ffbedd92d3075a5fb1b1a1ae Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 16 Aug 2007 15:07:42 +0000 Subject: * path.h (path_conv::operator char *): Delete. (path_conv::operator const char *): Delete. * dlfcn.cc: Throughout, replace path_conv::operator char * and path_conv::operator const char * by call to path_conv::get_win32 for easier transition to UNICODE_PATHs. * fhandler_socket.cc: Ditto. * hookapi.cc: Ditto. * path.cc: Ditto. * spawn.cc: Ditto. * syscalls.cc: Ditto. * uinfo.cc: Ditto. --- winsup/cygwin/spawn.cc | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'winsup/cygwin/spawn.cc') diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc index 604376880..6a658e92e 100644 --- a/winsup/cygwin/spawn.cc +++ b/winsup/cygwin/spawn.cc @@ -82,11 +82,11 @@ perhaps_suffix (const char *prog, path_conv& buf, int& err, unsigned opt) ext = NULL; } else if (buf.known_suffix) - ext = (char *) buf + (buf.known_suffix - buf.get_win32 ()); + ext = buf.get_win32 () + (buf.known_suffix - buf.get_win32 ()); else - ext = strchr (buf, '\0'); + ext = strchr (buf.get_win32 (), '\0'); - debug_printf ("buf %s, suffix found '%s'", (char *) buf, ext); + debug_printf ("buf %s, suffix found '%s'", (char *) buf.get_win32 (), ext); return ext; } @@ -104,7 +104,7 @@ find_exec (const char *name, path_conv& buf, const char *mywinenv, { const char *suffix = ""; debug_printf ("find_exec (%s)", name); - const char *retval = buf; + const char *retval = buf.get_win32 (); char tmp[CYG_MAX_PATH]; const char *posix = (opt & FE_NATIVE) ? NULL : name; bool has_slash = strchr (name, '/'); @@ -200,9 +200,9 @@ find_exec (const char *name, path_conv& buf, const char *mywinenv, out: if (posix) buf.set_path (posix); - debug_printf ("%s = find_exec (%s)", (char *) buf, name); + debug_printf ("%s = find_exec (%s)", (char *) buf.get_win32 (), name); if (known_suffix) - *known_suffix = suffix ?: strchr (buf, '\0'); + *known_suffix = suffix ?: strchr (buf.get_win32 (), '\0'); if (!retval && err) set_errno (err); return retval; @@ -367,7 +367,7 @@ spawn_guts (const char * prog_arg, const char *const *argv, real_path.check (prog_arg); one_line.add ("\""); if (!real_path.error) - one_line.add (real_path); + one_line.add (real_path.get_win32 ()); else one_line.add (argv[0]); one_line.add ("\""); @@ -375,14 +375,14 @@ spawn_guts (const char * prog_arg, const char *const *argv, one_line.add (argv[1]); one_line.add (" "); one_line.add (argv[2]); - strcpy (real_path, argv[0]); + strcpy (real_path.get_win32 (), argv[0]); null_app_name = true; } else { if (wascygexec) newargv.dup_all (); - else if (!one_line.fromargv (newargv, real_path, real_path.iscygexec ())) + else if (!one_line.fromargv (newargv, real_path.get_win32 (), real_path.iscygexec ())) { res = -1; goto out; @@ -459,7 +459,7 @@ spawn_guts (const char * prog_arg, const char *const *argv, && (!ch.iscygwin () || mode != _P_OVERLAY || cygheap->fdtab.need_fixup_before ())) c_flags |= CREATE_SUSPENDED; - runpath = null_app_name ? NULL : (const char *) real_path; + runpath = null_app_name ? NULL : real_path.get_win32 (); syscall_printf ("null_app_name %d (%s, %.9500s)", null_app_name, runpath, one_line.buf); @@ -597,7 +597,7 @@ loop: myself->dwProcessId = pi.dwProcessId; strace.execing = 1; myself.hProcess = hExeced = pi.hProcess; - strcpy (myself->progname, real_path); // FIXME: race? + strcpy (myself->progname, real_path.get_win32 ()); // FIXME: race? sigproc_printf ("new process name %s", myself->progname); /* If wr_proc_pipe doesn't exist then this process was not started by a cygwin process. So, we need to wait around until the process we've just "execed" @@ -638,7 +638,7 @@ loop: child->dwProcessId = pi.dwProcessId; child.hProcess = pi.hProcess; - strcpy (child->progname, real_path); + strcpy (child->progname, real_path.get_win32 ()); /* FIXME: This introduces an unreferenced, open handle into the child. The purpose is to keep the pid shared memory open so that all of the fields filled out by child.remember do not disappear and so there @@ -910,7 +910,7 @@ av::fixup (const char *prog_arg, path_conv& real_path, const char *ext) bool exeext = strcasematch (ext, ".exe"); if (exeext && real_path.iscygexec () || strcasematch (ext, ".bat")) return 0; - if (!*ext && ((p = ext - 4) > (char *) real_path) + if (!*ext && ((p = ext - 4) > real_path.get_win32 ()) && (strcasematch (p, ".bat") || strcasematch (p, ".cmd") || strcasematch (p, ".btm"))) return 0; @@ -920,7 +920,7 @@ av::fixup (const char *prog_arg, path_conv& real_path, const char *ext) char *arg1 = NULL; char *ptr, *buf; - HANDLE h = CreateFile (real_path, GENERIC_READ, + HANDLE h = CreateFile (real_path.get_win32 (), GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, &sec_none_nih, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); @@ -966,7 +966,7 @@ av::fixup (const char *prog_arg, path_conv& real_path, const char *ext) } } - debug_printf ("%s is possibly a script", (char *) real_path); + debug_printf ("%s is possibly a script", real_path.get_win32 ()); ptr = buf; if (*ptr++ == '#' && *ptr++ == '!') @@ -1019,7 +1019,7 @@ just_shell: /* FIXME: This should not be using FE_NATIVE. It should be putting the posix path on the argv list. */ find_exec (pgm, real_path, "PATH=", FE_NATIVE, &ext); - unshift (real_path, 1); + unshift (real_path.get_win32 (), 1); } return 0; -- cgit v1.2.3