You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2012/05/25 12:28:48 UTC
git commit: WICKET-4573 AbstractAjaxTimerBehavior should escape the
quotes for the code that it schedules to execute
Updated Branches:
refs/heads/wicket-1.5.x 3a619a052 -> 0e9c60ff9
WICKET-4573 AbstractAjaxTimerBehavior should escape the quotes for the code that it schedules to execute
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/0e9c60ff
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/0e9c60ff
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/0e9c60ff
Branch: refs/heads/wicket-1.5.x
Commit: 0e9c60ff9d19a1a851f7bfd01ec6152357bfa283
Parents: 3a619a0
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Fri May 25 13:17:34 2012 +0300
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Fri May 25 13:17:34 2012 +0300
----------------------------------------------------------------------
.../wicket/ajax/AbstractAjaxTimerBehavior.java | 7 +++++--
.../SimpleTestPageExpectedResult-1.html | 2 +-
.../componentMap/SimpleTestPageExpectedResult.html | 2 +-
3 files changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/0e9c60ff/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java b/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
index 59bd557..b08c7c3 100644
--- a/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
+++ b/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
@@ -21,6 +21,7 @@ import org.apache.wicket.Page;
import org.apache.wicket.markup.html.IHeaderResponse;
import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.request.http.WebRequest;
+import org.apache.wicket.util.string.JavaScriptUtils;
import org.apache.wicket.util.time.Duration;
/**
@@ -114,8 +115,10 @@ public abstract class AbstractAjaxTimerBehavior extends AbstractDefaultAjaxBehav
*/
protected final String getJsTimeoutCall(final Duration updateInterval)
{
- // this might look strange, but it is necessary for IE not to leak :(
- return "setTimeout(\"" + getCallbackScript() + "\", " + updateInterval.getMilliseconds() +
+ CharSequence callbackScript = getCallbackScript();
+ callbackScript = JavaScriptUtils.escapeQuotes(callbackScript);
+ // use setTimeout(String) instead of setTimeout(function) because IE leaks memory
+ return "setTimeout(\"" + callbackScript + "\", " + updateInterval.getMilliseconds() +
");";
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/0e9c60ff/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult-1.html
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult-1.html b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult-1.html
index 57ad6fe..a29982a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult-1.html
+++ b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult-1.html
@@ -11,4 +11,4 @@ wicketAjaxDebugEnable=true;
Wicket.Ajax.baseUrl="wicket/page?0-1.IBehaviorListener.0-testPanel-baseSpan-linja1";
/*]^]^>*/
</script>
-</head>]]></header-contribution><component id="linja11" ><![CDATA[<span wicket:id="linja1" id="linja11">1</span>]]></component><evaluate><![CDATA[setTimeout("var wcall=wicketAjaxGet('./page?0-1.IBehaviorListener.0-testPanel-baseSpan-linja1',function() { }.bind(this),function() { }.bind(this), function() {var c = Wicket.$('linja11'); return typeof(c) != 'undefined' && c != null}.bind(this));", 2000);]]></evaluate></ajax-response>
\ No newline at end of file
+</head>]]></header-contribution><component id="linja11" ><![CDATA[<span wicket:id="linja1" id="linja11">1</span>]]></component><evaluate><![CDATA[setTimeout("var wcall=wicketAjaxGet(\'./page?0-1.IBehaviorListener.0-testPanel-baseSpan-linja1\',function() { }.bind(this),function() { }.bind(this), function() {var c = Wicket.$(\'linja11\'); return typeof(c) != \'undefined\' && c != null}.bind(this));", 2000);]]></evaluate></ajax-response>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/0e9c60ff/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult.html
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult.html b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult.html
index eeeaec4..bae1ecd 100644
--- a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult.html
+++ b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/componentMap/SimpleTestPageExpectedResult.html
@@ -16,7 +16,7 @@ Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.comp
</script>
<script type="text/javascript" >
/*<![CDATA[*/
-Wicket.Event.add(window, "load", function(event) { setTimeout("var wcall=wicketAjaxGet('../page?0-1.IBehaviorListener.0-testPanel-baseSpan-linja1',function() { }.bind(this),function() { }.bind(this), function() {var c = Wicket.$('linja11'); return typeof(c) != 'undefined' && c != null}.bind(this));", 2000);;});
+Wicket.Event.add(window, "load", function(event) { setTimeout("var wcall=wicketAjaxGet(\'../page?0-1.IBehaviorListener.0-testPanel-baseSpan-linja1\',function() { }.bind(this),function() { }.bind(this), function() {var c = Wicket.$(\'linja11\'); return typeof(c) != \'undefined\' && c != null}.bind(this));", 2000);;});
/*]]>*/
</script>
</head>