瀏覽代碼

FindPackageMessage: Eliminate new lines in cache entries

Fix problem exposed by recent commit to FindPythonInterp.
If the find "details" has new lines in it, then replace them
with literal "\n" two character sequences so that the string
may be saved as a cache entry that can be re-read next time
CMake runs.
David Cole 14 年之前
父節點
當前提交
0ae78b76d5
共有 1 個文件被更改,包括 1 次插入0 次删除
  1. 1 0
      Modules/FindPackageMessage.cmake

+ 1 - 0
Modules/FindPackageMessage.cmake

@@ -34,6 +34,7 @@
 FUNCTION(FIND_PACKAGE_MESSAGE pkg msg details)
   # Avoid printing a message repeatedly for the same find result.
   IF(NOT ${pkg}_FIND_QUIETLY)
+    STRING(REPLACE "\n" "\\n" details "${details}")
     SET(DETAILS_VAR FIND_PACKAGE_MESSAGE_DETAILS_${pkg})
     IF(NOT "${details}" STREQUAL "${${DETAILS_VAR}}")
       # The message has not yet been printed.