From 7bf1a7c799a1e0f88d32c540732846565e19c6df Mon Sep 17 00:00:00 2001 From: TudbuT Date: Sun, 3 Jul 2022 19:32:51 +0200 Subject: [PATCH] improvements to tidy config and header parsing --- build.isbpl | 1 - src/de/tudbut/tryumph/server/BrowserContext.java | 2 +- src/de/tudbut/tryumph/server/HTMLParsing.java | 9 +++++++++ src/de/tudbut/tryumph/server/http/HTTPRequestReader.java | 6 +++--- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/build.isbpl b/build.isbpl index 4c31fae..1b7499f 100644 --- a/build.isbpl +++ b/build.isbpl @@ -2,7 +2,6 @@ func dependencies { "https://github.com/TudbuT/tuddylib/raw/master/TuddyLIB.jar" download - "https://github.com/TudbuT/tuddylib/raw/master/TuddyLIB-javadoc.zip" download "https://github.com/TudbuT/isbpl-random-stuff/raw/master/ISBPL.jar" download "https://github.com/jtidy/jtidy/releases/download/1.0.2-SNAPSHOT/jtidy-1.0.2-SNAPSHOT.jar" download "https://github.com/jtidy/jtidy/releases/download/1.0.2-SNAPSHOT/jtidy-1.0.2-SNAPSHOT-sources.jar" download diff --git a/src/de/tudbut/tryumph/server/BrowserContext.java b/src/de/tudbut/tryumph/server/BrowserContext.java index f7ebbca..bf0121d 100644 --- a/src/de/tudbut/tryumph/server/BrowserContext.java +++ b/src/de/tudbut/tryumph/server/BrowserContext.java @@ -131,7 +131,7 @@ public class BrowserContext { return cache.get(file); StringBuilder builder = new StringBuilder(); try { - InputStream stream = new FileInputStream(file); + InputStream stream = requestCatcher.getClass().getClassLoader().getResourceAsStream(file); int i = 0; while((i = stream.read()) != -1) { diff --git a/src/de/tudbut/tryumph/server/HTMLParsing.java b/src/de/tudbut/tryumph/server/HTMLParsing.java index 430b9b8..d9df28a 100644 --- a/src/de/tudbut/tryumph/server/HTMLParsing.java +++ b/src/de/tudbut/tryumph/server/HTMLParsing.java @@ -15,6 +15,15 @@ import de.tudbut.tryumph.util.Bug; public class HTMLParsing { private static Tidy tidy = new Tidy(); + static { + tidy.setIndentContent(true); + tidy.setWraplen(150); + tidy.setTidyMark(false); + tidy.setDropProprietaryTags(false); + tidy.setDropProprietaryAttributes(false); + tidy.setSpaces(4); + tidy.setXHTML(true); + } public static Element getElementById(Document document, String id) { diff --git a/src/de/tudbut/tryumph/server/http/HTTPRequestReader.java b/src/de/tudbut/tryumph/server/http/HTTPRequestReader.java index dc029c5..eedc94e 100644 --- a/src/de/tudbut/tryumph/server/http/HTTPRequestReader.java +++ b/src/de/tudbut/tryumph/server/http/HTTPRequestReader.java @@ -57,13 +57,13 @@ public class HTTPRequestReader { assumeCRLF(); String header; while(!(header = readUntilCRLF()).isEmpty()) { - boolean hasParameters = header.indexOf(';') != -1 && header.indexOf('=') != -1; + boolean hasParameters = header.indexOf("; ") != -1 && header.indexOf('=') != -1; String name = header.substring(0, header.indexOf(':')); String value = HTTPUtils.decodeUTF8(header.substring( header.indexOf(':') + 2, - hasParameters ? header.indexOf(';') : header.length() + hasParameters ? header.indexOf("; ") : header.length() )); - String parameters = hasParameters ? header.substring(header.indexOf(';') + 2) : ""; + String parameters = hasParameters ? header.substring(header.indexOf("; ") + 2) : ""; HashMap parameterMap = splitParameters(parameters); // Handle cookies if(name.equals("Cookie")) {