From 034e13cf8b85c57c4f04f40db5de82a23b7f6982 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Wed, 28 Aug 2013 09:34:44 +0200
Subject: [PATCH] OO-737: hardened the method to prevent an exception in the
 renderBodyOnLoad (which is probably not usefull)

---
 .../core/gui/components/tabbedpane/TabbedPaneRenderer.java    | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java b/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java
index 369edcafa61..58aa9e715c0 100644
--- a/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java
@@ -118,6 +118,7 @@ public class TabbedPaneRenderer implements ComponentRenderer {
    * 
 	 * @see org.olat.core.gui.render.ui.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator)
 	 */
+	@Override
 	public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) {
 		TabbedPane tp = (TabbedPane)source;
 		int cnt = tp.getTabCount();
@@ -132,10 +133,11 @@ public class TabbedPaneRenderer implements ComponentRenderer {
    * 
 	 * @see org.olat.core.gui.render.ui.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component)
 	 */
+	@Override
 	public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) {
 		TabbedPane tp = (TabbedPane)source;
 		int cnt = tp.getTabCount();
-		if (cnt > 0) {
+		if (cnt > 0 && tp.getSelectedPane() < cnt) {
 			Component toRender = tp.getTabAt(tp.getSelectedPane());
 			//	delegate js rendering to the selected pane
 			renderer.renderBodyOnLoadJSFunctionCall(sb, toRender, rstate);
-- 
GitLab