# HG changeset patch # User Jaroslav Tulach # Date 1358873585 -3600 # Node ID 48f01cef55c221d32210291481053342a3ca235e # Parent ca0fcd9240eac6c9f44d4210eb771691040833dc Don't do any substitutions for non-HTML pages diff -r ca0fcd9240ea -r 48f01cef55c2 launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java --- a/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java Tue Jan 22 17:52:21 2013 +0100 +++ b/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java Tue Jan 22 17:53:05 2013 +0100 @@ -216,12 +216,12 @@ if (ch == -1) { break; } - if (ch == '$') { + if (ch == '$' && params.length > 0) { int cnt = is.read() - '0'; if (cnt == 'U' - '0') { os.write(baseURL.getBytes()); } - if (cnt < params.length) { + if (cnt >= 0 && cnt < params.length) { os.write(params[cnt].getBytes()); } } else { @@ -360,17 +360,20 @@ r = r.substring(1); } } + String[] replace = {}; if (r.endsWith(".html")) { response.setContentType("text/html"); LOG.info("Content type text/html"); + replace = args; } if (r.endsWith(".xhtml")) { response.setContentType("application/xhtml+xml"); LOG.info("Content type application/xhtml+xml"); + replace = args; } OutputStream os = response.getOutputStream(); try (InputStream is = res.get(r)) { - copyStream(is, os, request.getRequestURL().toString(), args); + copyStream(is, os, request.getRequestURL().toString(), replace); } catch (IOException ex) { response.setDetailMessage(ex.getLocalizedMessage()); response.setError();