#2243 fix empty content
This commit is contained in:
parent
6e2b065d4f
commit
d19f020cca
2 changed files with 28 additions and 4 deletions
|
@ -383,12 +383,20 @@ public class FessFunctions {
|
|||
list.add(line);
|
||||
}
|
||||
}
|
||||
if (lineNum == 0 || list.isEmpty()) {
|
||||
return "<pre class=\"" + style + "\">" + input + "</pre>";
|
||||
}
|
||||
int lastIndex = list.size();
|
||||
if (list.get(list.size() - 1).endsWith("...")) {
|
||||
list.remove(list.size() - 1);
|
||||
lastIndex--;
|
||||
}
|
||||
if (lineNum == 0) {
|
||||
return "<pre class=\"" + style + "\">" + list.stream().collect(Collectors.joining("\n")) + "</pre>";
|
||||
if (lastIndex <= 0) {
|
||||
lastIndex = 1;
|
||||
}
|
||||
return "<pre class=\"" + style + " linenums:" + lineNum + "\">" + list.stream().collect(Collectors.joining("\n")) + "</pre>";
|
||||
final String content = list.subList(0, lastIndex).stream().collect(Collectors.joining("\n"));
|
||||
if (StringUtil.isBlank(content)) {
|
||||
return "<pre class=\"" + style + "\">" + input.replaceAll("L[0-9]+:", StringUtil.EMPTY).trim() + "</pre>";
|
||||
}
|
||||
return "<pre class=\"" + style + " linenums:" + lineNum + "\">" + content + "</pre>";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -100,5 +100,21 @@ public class FessFunctionsTest extends UnitFessTestCase {
|
|||
value = FessFunctions.formatCode("L", "prettyprint", "text/plain", code);
|
||||
assertEquals("<pre class=\"prettyprint linenums:10\">aaa\nbbb</pre>", value);
|
||||
|
||||
code = "aaa\nL11:bbb\nL12:ccc...";
|
||||
value = FessFunctions.formatCode("L", "prettyprint", "text/plain", code);
|
||||
assertEquals("<pre class=\"prettyprint linenums:11\">bbb</pre>", value);
|
||||
|
||||
code = "aaa\nL10:";
|
||||
value = FessFunctions.formatCode("L", "prettyprint", "text/plain", code);
|
||||
assertEquals("<pre class=\"prettyprint\">aaa</pre>", value);
|
||||
|
||||
code = "aaa\nL10:\nL11:ccc...";
|
||||
value = FessFunctions.formatCode("L", "prettyprint", "text/plain", code);
|
||||
assertEquals("<pre class=\"prettyprint\">aaa\n\nccc...</pre>", value);
|
||||
|
||||
code = "aaa\nL10:\nL11:ccc";
|
||||
value = FessFunctions.formatCode("L", "prettyprint", "text/plain", code);
|
||||
assertEquals("<pre class=\"prettyprint linenums:10\">\nccc</pre>", value);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue