|
From: | anonymous |
Subject: | [bug #61154] (w32/sub_proc.c) make_command_line should also quote full_exec_path. |
Date: | Mon, 13 Sep 2021 23:02:36 -0400 (EDT) |
User-agent: | Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:92.0) Gecko/20100101 Firefox/92.0 |
URL: <https://savannah.gnu.org/bugs/?61154> Summary: (w32/sub_proc.c) make_command_line should also quote full_exec_path. Project: make Submitted by: None Submitted on: Tue 14 Sep 2021 03:02:34 AM UTC Severity: 3 - Normal Item Group: Bug Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Component Version: 4.3 Operating System: MS Windows Fixed Release: None Triage Status: None _______________________________________________________ Details: This bug occurs under win32 when make tries to execute a shell script whose full path contains spaces. The current code at http://git.savannah.gnu.org/cgit/make.git/tree/src/w32/subproc/sub_proc.c#n1360 construct a command line that is obviously wrong when full_exec_path contains spaces. The shell then searches for a script whose name is the truncation of full_exec_path at its first white space and reports a file-not-found error. Example: Under MSYS. $ mkdir "/c/dir with space/" $ cd "/c/dir with space/" $ cat > script.sh <<EOF #!/bin/sh echo Hello "$@" EOF $ cat > Makefile <<EOF all: <tab>./script.sh World EOF $ make ./script.sh World sh: c:\dir: No such file or directory make: *** [Makefile:2: all] Error 127 but $ make SHELLFLAGS='-x -c' ./script.sh World + ./script.sh World Hello World $ _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?61154> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/
[Prev in Thread] | Current Thread | [Next in Thread] |