1 /* This test program is part of GDB, the GNU debugger.
3 Copyright 2016-2024 Free Software Foundation, Inc.
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
26 set_path (int argc
, char ** argv
)
32 strcpy (path
, argv
[0]);
33 int len
= strlen (path
);
35 /* Make a path name out of an exec name. */
37 for (i
= len
- 1; i
>= 0; i
--)
40 if (c
== '/' || c
== '\\')
51 /* Prefix with "PATH=". */
52 const char *prefix
= "PATH=";
53 int prefix_len
= strlen (prefix
);
54 memmove (path
+ prefix_len
, path
, len
);
55 path
[prefix_len
+ len
] = '\0';
56 memcpy (path
, prefix
, prefix_len
);
58 printf ("PATH SETTING: '%s'\n", path
);
63 main (int argc
, char ** argv
)
65 set_path (argc
, argv
);
66 const char *prog
= "infcall-exec2";
68 int res
= execlp (prog
, prog
, (char *) 0); /* break here */