Cherrypick r11349 into 2.5 branch
Link to TroubleshootingOOPHM instead of embedding in iframe
Review by: rdayal@google.com
git-svn-id: https://google-web-toolkit.googlecode.com/svn/releases/2.5@11350 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/core/ext/linker/impl/devmode.js b/dev/core/src/com/google/gwt/core/ext/linker/impl/devmode.js
index aebf9c7..1b1e354 100644
--- a/dev/core/src/com/google/gwt/core/ext/linker/impl/devmode.js
+++ b/dev/core/src/com/google/gwt/core/ext/linker/impl/devmode.js
@@ -122,8 +122,8 @@
outer.innerHTML =
'<div style="position:absolute;z-index:' + __gwt_glassMessageZIndex-- +
';left:50px;top:50px;width:600px;color:#FFF;font-family:verdana;text-align:left;">' +
- '<div style="font-size:30px;font-weight:bold;">' + simpleEscape(summary) + '</div>' +
- '<div style="font-size:15px;">' + simpleEscape(details) + '</div>' +
+ '<div style="font-size:30px;font-weight:bold;">' + summary + '</div>' +
+ '<div style="font-size:15px;">' + details + '</div>' +
'</div>' +
'<div style="position:absolute;z-index:' + __gwt_glassMessageZIndex-- +
';left:0px;top:0px;right:0px;bottom:0px;filter:alpha(opacity=60);opacity:0.6;background-color:#000;"></div>'
@@ -154,7 +154,7 @@
glassStyle.setExpression("height", "document.documentElement.clientHeight");
}
- $doc.title = simpleEscape(summary) + " [" + $doc.title + "]";
+ $doc.title = summary + " [" + $doc.title + "]";
}
@@ -321,9 +321,11 @@
if ($errFn) {
$errFn($moduleName);
} else {
- __gwt_displayGlassMessage("Plugin failed to connect to Development Mode server at " + codeServer,
- "Follow the underlying troubleshooting instructions");
- loadIframe("http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM");
+ __gwt_displayGlassMessage(
+ "Plugin failed to connect to Development Mode server at " + simpleEscape(codeServer),
+ "Follow the troubleshooting instructions at "
+ + "<a href='http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM'>"
+ + "http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM</a>");
}
}
diff --git a/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html b/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html
index 4c82193..267fdf7 100644
--- a/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html
+++ b/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html
@@ -175,8 +175,8 @@
outer.innerHTML =
'<div style="position:absolute;z-index:' + __gwt_glassMessageZIndex-- +
';left:50px;top:50px;width:600px;color:#FFF;font-family:verdana;text-align:left;">' +
- '<div style="font-size:30px;font-weight:bold;">' + simpleEscape(summary) + '</div>' +
- '<div style="font-size:15px;">' + simpleEscape(details) + '</div>' +
+ '<div style="font-size:30px;font-weight:bold;">' + summary + '</div>' +
+ '<div style="font-size:15px;">' + details + '</div>' +
'</div>' +
'<div style="position:absolute;z-index:' + __gwt_glassMessageZIndex-- +
';left:0px;top:0px;right:0px;bottom:0px;filter:alpha(opacity=60);opacity:0.6;background-color:#000;"></div>'
@@ -207,7 +207,7 @@
glassStyle.setExpression("height", "document.documentElement.clientHeight");
}
- $doc.title = simpleEscape(summary) + " [" + $doc.title + "]";
+ $doc.title = summary + " [" + $doc.title + "]";
}
function findPluginObject() {
@@ -294,9 +294,11 @@
if (errFn) {
errFn(modName);
} else {
- __gwt_displayGlassMessage("Plugin failed to connect to Development Mode server at " + $hosted,
- "Follow the underlying troubleshooting instructions");
- loadIframe("http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM");
+ __gwt_displayGlassMessage(
+ "Plugin failed to connect to Development Mode server at " + simpleEscape($hosted),
+ "Follow the troubleshooting instructions at "
+ + "<a href='http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM'>"
+ + "http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM</a>");
}
}
}
diff --git a/dev/core/src/com/google/gwt/dev/shell/ModuleSpace.java b/dev/core/src/com/google/gwt/dev/shell/ModuleSpace.java
index 9a11514..b724854 100644
--- a/dev/core/src/com/google/gwt/dev/shell/ModuleSpace.java
+++ b/dev/core/src/com/google/gwt/dev/shell/ModuleSpace.java
@@ -18,6 +18,7 @@
import com.google.gwt.core.ext.TreeLogger;
import com.google.gwt.core.ext.UnableToCompleteException;
import com.google.gwt.dev.util.Name;
+import com.google.gwt.dev.util.Util;
import com.google.gwt.dev.util.Name.BinaryName;
import com.google.gwt.dev.util.log.speedtracer.DevModeEventType;
import com.google.gwt.dev.util.log.speedtracer.SpeedTracerLogger;
@@ -614,17 +615,18 @@
String summary, String entryPointTypeName, Throwable e) throws Throwable {
StringWriter writer = new StringWriter();
e.printStackTrace(new PrintWriter(writer));
- String stackTrace = writer.toString().replaceFirst(
+ String stackTrace = Util.escapeXml(writer.toString()).replaceFirst(
// (?ms) for regex pattern modifiers MULTILINE and DOTALL
"(?ms)(Caused by:.+)", "<b>$1</b>");
String details = "<p>Exception while loading module <b>"
- + entryPointTypeName + "</b>. See Development Mode for details.</p>"
+ + Util.escapeXml(entryPointTypeName) + "</b>."
+ + " See Development Mode for details.</p>"
+ "<div style='overflow:visisble;white-space:pre;'>" + stackTrace
+ "</div>";
invokeNativeVoid("__gwt_displayGlassMessage", null,
- new Class[]{String.class, String.class},
- new Object[]{summary, details});
+ new Class[] { String.class, String.class },
+ new Object[] { Util.escapeXml(summary), details });
}
private boolean isUserFrame(StackTraceElement element) {