| Index: tools/gn/standard_out.cc
|
| diff --git a/tools/gn/standard_out.cc b/tools/gn/standard_out.cc
|
| index 6d3960e6f4863b418cc333c92fbeb527c9a5511d..0c5b54f5fd288b30f9e0c065db368df2899f32e4 100644
|
| --- a/tools/gn/standard_out.cc
|
| +++ b/tools/gn/standard_out.cc
|
| @@ -8,7 +8,9 @@
|
|
|
| #include "base/command_line.h"
|
| #include "base/logging.h"
|
| +#include "base/strings/string_piece.h"
|
| #include "base/strings/string_split.h"
|
| +#include "base/strings/string_util.h"
|
| #include "build/build_config.h"
|
| #include "tools/gn/switches.h"
|
|
|
| @@ -124,7 +126,15 @@ void OutputString(const std::string& output, TextDecoration dec) {
|
| }
|
| }
|
|
|
| - ::WriteFile(hstdout, output.c_str(), static_cast<DWORD>(output.size()),
|
| + std::string tmpstr = output;
|
| + if (is_markdown && dec == DECORATION_YELLOW) {
|
| + // https://code.google.com/p/gitiles/issues/detail?id=77
|
| + // Gitiles will replace "--" with an em dash in non-code text.
|
| + // Figuring out all instances of this might be difficult, but we can
|
| + // at least escape the instances where this shows up in a heading.
|
| + base::ReplaceSubstringsAfterOffset(&tmpstr, 0, "--", "\\--");
|
| + }
|
| + ::WriteFile(hstdout, tmpstr.c_str(), static_cast<DWORD>(tmpstr.size()),
|
| &written, nullptr);
|
|
|
| if (is_markdown) {
|
| @@ -162,7 +172,15 @@ void OutputString(const std::string& output, TextDecoration dec) {
|
| }
|
| }
|
|
|
| - WriteToStdOut(output.data());
|
| + std::string tmpstr = output;
|
| + if (is_markdown && dec == DECORATION_YELLOW) {
|
| + // https://code.google.com/p/gitiles/issues/detail?id=77
|
| + // Gitiles will replace "--" with an em dash in non-code text.
|
| + // Figuring out all instances of this might be difficult, but we can
|
| + // at least escape the instances where this shows up in a heading.
|
| + base::ReplaceSubstringsAfterOffset(&tmpstr, 0, "--", "\\--");
|
| + }
|
| + WriteToStdOut(tmpstr.data());
|
|
|
| if (is_markdown) {
|
| OutputMarkdownDec(dec);
|
|
|