浏览代码

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.