]> git.ipfire.org Git - thirdparty/ccache.git/commit
win32: Fix handling of long command lines (#816)
authorAleksander Salwa <34712835+asalwa@users.noreply.github.com>
Sat, 20 Mar 2021 18:55:54 +0000 (19:55 +0100)
committerGitHub <noreply@github.com>
Sat, 20 Mar 2021 18:55:54 +0000 (19:55 +0100)
commitea433578505af6ae799cdc4dae81516ab0757bca
tree22097e6d6c1d592872e6bca7ea3e0f02548f0268
parente3a9b05f3d513c46fc068388eb5666cc1f15502b
win32: Fix handling of long command lines (#816)

What is broken: handling of "execute" with long command parameters (see win32execute).

In more details:

* parameter lpCommandLine was formatted incorrectly (it has to contain app name too)
* temporary file with parameters to the compiler was formatted incorrectly (it
  should NOT contain app name; if it contains backslashes, then these
  backslashes need to be escaped as double-backslashes)
* wrong location (directory) of temporary files in win32execute
* premature deletion of temporary files in win32execute
src/Win32Util.cpp
src/Win32Util.hpp
src/ccache.cpp
src/execute.cpp
src/execute.hpp
src/system.hpp
unittest/test_Win32Util.cpp