Author: d0k Date: Tue Feb 7 05:49:03 2017 New Revision: 294294 URL: http://llvm.org/viewvc/llvm-project?rev=294294&view=rev Log: [clangd] Harden test against sed implementations that strip \r.
Also clean up logging and don't print \0. Modified: clang-tools-extra/trunk/clangd/ClangDMain.cpp clang-tools-extra/trunk/test/clangd/formatting.test Modified: clang-tools-extra/trunk/clangd/ClangDMain.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/ClangDMain.cpp?rev=294294&r1=294293&r2=294294&view=diff ============================================================================== --- clang-tools-extra/trunk/clangd/ClangDMain.cpp (original) +++ clang-tools-extra/trunk/clangd/ClangDMain.cpp Tue Feb 7 05:49:03 2017 @@ -68,18 +68,17 @@ int main(int argc, char *argv[]) { // Now read the JSON. Insert a trailing null byte as required by the YAML // parser. - std::vector<char> JSON(Len + 1); + std::vector<char> JSON(Len + 1, '\0'); std::cin.read(JSON.data(), Len); if (Len > 0) { + llvm::StringRef JSONRef(JSON.data(), Len); // Log the message. - Logs << "<-- "; - Logs.write(JSON.data(), JSON.size()); - Logs << '\n'; + Logs << "<-- " << JSONRef << '\n'; Logs.flush(); // Finally, execute the action for this JSON message. - if (!Dispatcher.call(llvm::StringRef(JSON.data(), JSON.size() - 1))) + if (!Dispatcher.call(JSONRef)) Logs << "JSON dispatch failed!\n"; } } Modified: clang-tools-extra/trunk/test/clangd/formatting.test URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clangd/formatting.test?rev=294294&r1=294293&r2=294294&view=diff ============================================================================== --- clang-tools-extra/trunk/test/clangd/formatting.test (original) +++ clang-tools-extra/trunk/test/clangd/formatting.test Tue Feb 7 05:49:03 2017 @@ -1,5 +1,4 @@ -# RUN: sed -e '/^#/d' %s | clangd | FileCheck %s -# It is absolutely vital that this file has CRLF line endings. +# RUN: sed -e '/^#/d' -e 's/\r*$/\r/' %s | clangd | FileCheck %s # Content-Length: 125 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits