# HG changeset patch # User Jaroslav Tulach # Date 1381327639 -7200 # Node ID ae20214a816ca5b6fab82e8cfe69f863d812e122 # Parent f14e9730d4e952d3513304d7eeb8a1c2ad699449 Replace parameters and log only if console object is present diff -r f14e9730d4e9 -r ae20214a816c rt/emul/compact/src/main/java/java/util/logging/Logger.java --- a/rt/emul/compact/src/main/java/java/util/logging/Logger.java Mon Oct 07 16:17:21 2013 +0200 +++ b/rt/emul/compact/src/main/java/java/util/logging/Logger.java Wed Oct 09 16:07:19 2013 +0200 @@ -457,16 +457,23 @@ case "WARNING": method = "warn"; break; default: method = "log"; break; } + + String msg = record.getMessage(); + final Object[] params = record.getParameters(); + if (params == null || params.length == 0) { + } else { + for (int i = 0; i < params.length; i++) { + msg = msg.replace("{" + i + "}", params[i] == null ? "null" : params[i].toString()); + } + } consoleLog( method, - record.getLoggerName(), - record.getMessage() - ); + record.getLoggerName(), msg); } @JavaScriptBody(args = { "method", "logger", "msg" }, body = - "window.console[method]('[' + logger + ']: ' + msg);" + "if (console) console[method]('[' + logger + ']: ' + msg);" ) private static native void consoleLog( String method, String logger, String msg