I spent a good chunk of additional time on this but no luck yet...
As you said, setting my tab controls to overflow:hidden makes the failure go away, and I can clearly see that the controls now are clipped, so thanks for that!
Let me know if you want me to try out anything in particular, otherwise I will revisit this with nightlies and will allocate more time to it after I get some work stuff out of the way...
Announcement
Collapse
No announcement yet.
X
-
Hmm, seems like you've found a legitimate infinite loop issue.
A runnable test case would be great - in the meantime, since this looks like some kind of auto-sizing issue, you could try setting your added tabControls to overflow:hidden if any are overflow:visible.
Leave a comment:
-
So far in my testing, this happens in:
Chrome 22.0.1229.94 m
FF 6.0.2
IE 9
With respect to SmartGWT:
1. This does NOT happen with 3.0p-2012-04-26
2. This happens with 3.0p-2012-10-23
3. This happens with 3.1d-2012-09-29
While testing:
1. This happens on a page with a TabSet of size 100%, with tab controls
2. This does NOT happen when the TabSet controls are TabBarControls.TAB_SCROLLER and TabBarControls.TAB_PICKER
3. I found a comment in my code that, when in addition to #2 I added a tab control of type HLayout on which I invoke setAutoWidth (), I got this: "com.google.gwt.core.client.JavaScriptException: (InternalError): too much recursion". This comment goes back to SmartGWT 3.0p-2012-04-26.
4. It seems that this happens also if, in addition to #2, I add an HLayout with a TransferImgButton on which I call setSize (). If I remove the setSize (), the problem goes away
Of course, this is what I have been able to figure out while running the whole app.
To make my app run, I had to remove one of the controls (the one with TransferImgButtons) from the TabSet controls.
Unfortunately I have not been able to reproduce this on a small test-case yet.
Leave a comment:
-
Is this only in IE? If so, IE sets arbitrary stack depths, and can sometimes just cut off executing of a thread that would complete normally in any other browser.
Leave a comment:
-
too much recursion Stack from error
I upgraded an app from 3.0p-2012-04-26 to 3.1d-2012-09-29, and while the app behaviors seem to remain consistent, I get many of the following in the GWT console:
This error pops up when the app shows a Tab control with 1 tab.Code:00:03:06.461 [ERROR] 11:31:09.861:TMR7:WARN:Log:InternalError: too much recursion Stack from error.stack: Log._getObjectID({Obj}) @ portal/sc/modules/ISC_Core.js:670 [c]Log.getPriority(_1=>"listPolicy", _2=>{Obj}) @ portal/sc/modules/ISC_Core.js:670 [c]Log.isEnabledFor(_1=>"listPolicy", _2=>5, _3=>{Obj}) @ portal/sc/modules/ISC_Core.js:674 unnamed(5, "listPolicy") @ portal/sc/modules/ISC_Core.js:666 unnamed("listPolicy") @ portal/sc/modules/ISC_Core.js:666 [c]Canvas.applyStretchResizePolicy(_1=>[object Array], _2=>5884, _3=>1, _4=>true, _5=>{Obj}) @ portal/sc/modules/ISC_Foundation.js:654 Layout._getMemberSizes(5884) @ portal/sc/modules/ISC_Foundation.js:291 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:282 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1837 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(5884, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-4924, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-4924, 0, 5958, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(5958) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(5876, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-4916, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-4916, 0, 5950, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(5950) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(5868, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-4908, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-4908, 0, 5942, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(5942) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(5860, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-4900, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-4900, 0, 5934, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(5934) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(5852, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-4892, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-4892, 0, 5926, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(5926) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(5844, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-4884, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 ... ... 255 winword pages total... ... ... Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(3060, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-2100, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-2100, 0, 3134, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(3134) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(3052, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 8, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-8, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-2092, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-2092, 0, 3126, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(3126) @ portal/sc/modules/ISC_Containers.js:241 TabSet._controlLayoutChildResized() @ portal/sc/modules/ISC_Containers.js:242 unnamed({Obj}, 8, 0, undef) @ portal/sc/modules/ISC_Containers.js:232 unnamed(8, 0, undef) @ portal/sc/modules/ISC_Core.js:1840 Canvas._completeResizeBy(undef) @ portal/sc/modules/ISC_Core.js:1839 Canvas.resizeBy(8, 0, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1835 Canvas.resizeTo(3044, 22) @ portal/sc/modules/ISC_Core.js:1847 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:245 Layout.layoutChildren("resized", 66, 0) @ portal/sc/modules/ISC_Foundation.js:284 Canvas._completeResizeBy() @ portal/sc/modules/ISC_Core.js:1837 Canvas.moveBy(-66, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1797 Canvas.moveTo(-2084, 0, undef, true) @ portal/sc/modules/ISC_Core.js:1820 Canvas.setRect(-2084, 0, 3118, 22) @ portal/sc/modules/ISC_Core.js:1605 TabSet.placeControlLayout(3118) @ portal/sc/modules/ISC_Containers.js:241 TabSet.showControls() @ portal/sc/modules/ISC_Containers.js:238 TabSet.fixLayout() @ portal/sc/modules/ISC_Containers.js:223 TabSet._tabResized() @ portal/sc/modules/ISC_Containers.js:245 unnamed({Obj}, 7, 4, "overflow") @ portal/sc/modules/ISC_Containers.js:193 unnamed(7, 4, "overflow", undef, undef, undef, undef, undef) @ portal/sc/modules/ISC_Core.js:1840 [a]MathFunction.invokeSuper(_1=>{Obj}, _2=>"$5y", _3=>7, _4=>4, _5=>"overflow", _6=>undef, _7=>undef) @ portal/sc/modules/ISC_Core.js:219 StatefulCanvas._resized(7, 4, "overflow") @ portal/sc/modules/ISC_Foundation.js:178 Canvas.._adjustOverflow("redraw") @ portal/sc/modules/ISC_Core.js:1926 Canvas._adjustOverflow("redraw") @ portal/sc/modules/ISC_Core.js:1908 Canvas.adjustOverflow("redraw", null, true) @ portal/sc/modules/ISC_Core.js:1904 Canvas._updateHTML() @ portal/sc/modules/ISC_Core.js:1488 Canvas.redraw("Layout getting new size") @ portal/sc/modules/ISC_Core.js:1482 Layout.resizeMembers([object Array], [object Array], true) @ portal/sc/modules/ISC_Foundation.js:246 Layout.layoutChildren("memberResized: (5,0): isc_Tab_0", undef, undef, undef, undef, undef, undef, undef) @ portal/sc/modules/ISC_Foundation.js:284 [a]MathFunction.invokeSuper(_1=>{Obj}, _2=>"layoutChildren", _3=>"memberResized: (5,0): isc_Tab_0", _4=>undef, _5=>undef, _6=>undef) @ portal/sc/modules/ISC_Core.js:219 TabBar.layoutChildren("memberResized: (5,0): isc_Tab_0") @ portal/sc/modules/ISC_Containers.js:28 Layout.reflowNow("memberResized: (5,0): isc_Tab_0", 4) @ portal/sc/modules/ISC_Foundation.js:298 unnamed() @ portal/sc/modules/ISC_Foundation.js:298 [c]Class.fireCallback(_1=>function (), _2=>undef, _3=>[object Array], _4=>[object Proxy], _5=>true) @ portal/sc/modules/ISC_Core.js:228 Timer._fireTimeout("$ir247") @ portal/sc/modules/ISC_Core.js:900 unnamed() @ portal/sc/modules/ISC_Core.js:896 unnamed() @ at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:105) at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71) at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:167) at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:281) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:531) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:352) at java.lang.Thread.run(Thread.java:662)
Before I start working on smaller test cases, does anybody have any hints?Tags: None
Leave a comment: