merge from gcc
authorDJ Delorie <dj@redhat.com>
Thu, 3 Jul 2003 14:00:54 +0000 (14:00 +0000)
committerDJ Delorie <dj@redhat.com>
Thu, 3 Jul 2003 14:00:54 +0000 (14:00 +0000)
libiberty/ChangeLog
libiberty/pex-win32.c

index 99f2f0a695a9c5fb20285bb4623e4be7d1c336d3..770ef9533ef3d2f0f4d9b7e6834de31a07956da5 100644 (file)
@@ -1,3 +1,9 @@
+2003-07-02  Danny Smith  <dannysmith@users.source.forge.net>
+
+       * pex-win32.c (fix_argv): Ensure that the executable pathname
+       uses Win32 backslashes.
+       (pexecute): Cast away constness when assigning *errmsg_arg.
+
 2003-06-26  H.J. Lu <hongjiu.lu@intel.com>
 
        * testsuite/demangle-expected: Add more GNU V3 testcases.
index bd097a4bb052600dea352169aabfe5cc2c6c6140..24a55e8bc0d83aa6735654c904a46f8752d785b2 100644 (file)
@@ -57,7 +57,13 @@ fix_argv (argvec)
      char **argvec;
 {
   int i;
+  char * command0 = argvec[0];
 
+  /* Ensure that the executable pathname uses Win32 backslashes.  */
+  for (; *command0 != '\0'; command0++)
+    if (*command0 == '/')
+      *command0 = '\\';
   for (i = 1; argvec[i] != 0; i++)
     {
       int len, j;
@@ -203,7 +209,7 @@ pexecute (program, argv, this_pname, temp_base, errmsg_fmt, errmsg_arg, flags)
   if (pid == -1)
     {
       *errmsg_fmt = install_error_msg;
-      *errmsg_arg = program;
+      *errmsg_arg = (char*) program;
       return -1;
     }