diff options
-rw-r--r-- | Source/kwsys/System.c | 6 | ||||
-rw-r--r-- | Tests/CustomCommand/CMakeLists.txt | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/Source/kwsys/System.c b/Source/kwsys/System.c index d205c96..900b025 100644 --- a/Source/kwsys/System.c +++ b/Source/kwsys/System.c @@ -170,6 +170,12 @@ flag later when we understand applications of this better. static int kwsysSystem_Shell__ArgumentNeedsQuotes(const char* in, int isUnix, int flags) { + /* The empty string needs quotes. */ + if(!*in) + { + return 1; + } + /* Scan the string for characters that require quoting. */ { const char* c; diff --git a/Tests/CustomCommand/CMakeLists.txt b/Tests/CustomCommand/CMakeLists.txt index 8ac1f12..ffe0523 100644 --- a/Tests/CustomCommand/CMakeLists.txt +++ b/Tests/CustomCommand/CMakeLists.txt @@ -346,7 +346,7 @@ ENDIF(NOT MINGW) # | < > << >> &> 2>&1 1>&2 # to allow custom commands to perform redirection. -FOREACH(arg ${CHECK_ARGS}) +FOREACH(arg ${CHECK_ARGS} "") SET(ARG "${arg}") STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ARG "${ARG}") STRING(REGEX REPLACE "\"" "\\\\\"" ARG "${ARG}") @@ -367,7 +367,7 @@ ADD_CUSTOM_COMMAND( COMMAND ${CMAKE_COMMAND} -DMARK_FILE=${CMAKE_CURRENT_BINARY_DIR}/check_mark.txt -P ${CMAKE_CURRENT_SOURCE_DIR}/check_mark.cmake COMMAND ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/check_command_line - ${CHECK_ARGS} + ${CHECK_ARGS} "" VERBATIM COMMENT "Checking custom command line escapes (single'quote)" ) @@ -377,7 +377,7 @@ ADD_CUSTOM_TARGET(do_check_command_line ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/command_line_check COMMAND ${CMAKE_COMMAND} -E echo "Checking custom target command escapes" COMMAND ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/check_command_line - ${CHECK_ARGS} + ${CHECK_ARGS} "" VERBATIM COMMENT "Checking custom target command line escapes ($dollar-signs$)" ) |