Index: third_party/protobuf/src/google/protobuf/compiler/java/java_doc_comment.cc |
diff --git a/third_party/protobuf/src/google/protobuf/compiler/java/java_doc_comment.cc b/third_party/protobuf/src/google/protobuf/compiler/java/java_doc_comment.cc |
index 663f0c97fc0323fb3259f13fef835768d7d7bb45..60b4f2ac62704965337eb18a6b5592ade9cc1438 100644 |
--- a/third_party/protobuf/src/google/protobuf/compiler/java/java_doc_comment.cc |
+++ b/third_party/protobuf/src/google/protobuf/compiler/java/java_doc_comment.cc |
@@ -1,6 +1,6 @@ |
// Protocol Buffers - Google's data interchange format |
// Copyright 2008 Google Inc. All rights reserved. |
-// https://developers.google.com/protocol-buffers/ |
+// http://code.google.com/p/protobuf/ |
// |
// Redistribution and use in source and binary forms, with or without |
// modification, are permitted provided that the following conditions are |
@@ -70,10 +70,12 @@ string EscapeJavadoc(const string& input) { |
} |
break; |
case '@': |
- // '@' starts javadoc tags including the @deprecated tag, which will |
- // cause a compile-time error if inserted before a declaration that |
- // does not have a corresponding @Deprecated annotation. |
- result.append("@"); |
+ // "{@" starts Javadoc markup. |
+ if (prev == '{') { |
+ result.append("@"); |
+ } else { |
+ result.push_back(c); |
+ } |
break; |
case '<': |
// Avoid interpretation as HTML. |
@@ -115,7 +117,8 @@ static void WriteDocCommentBodyForLocation( |
// HTML-escape them so that they don't accidentally close the doc comment. |
comments = EscapeJavadoc(comments); |
- vector<string> lines = Split(comments, "\n"); |
+ vector<string> lines; |
+ SplitStringAllowEmpty(comments, "\n", &lines); |
while (!lines.empty() && lines.back().empty()) { |
lines.pop_back(); |
} |