Don't call pack() on not yet visible table on Linux#947
Don't call pack() on not yet visible table on Linux#947iloveeclipse wants to merge 2 commits intoeclipse-equinox:masterfrom
Conversation
Something goes wrong on SWT Column/Table GTK code if column is being packed on not yet shown table. So let pack() the column on a next call on Linux. Fixes eclipse-equinox#946
Should this not fixed at SWT instead on each call site of pack? |
|
This pull request changes some projects for the first time in this development cycle. An additional commit containing all the necessary changes was pushed to the top of this PR's branch. To obtain these changes (for example if you want to push more changes) either fetch from your fork or apply the git patch. Git patchFurther information are available in Common Build Issues - Missing version increments. |
If one knows where and how to fix, for sure. I don't know. |
There was a problem hiding this comment.
It don't seems suitable to add workarounds that complicate the code her at P2 and should better be reported / fixed at SWT.
JDT shows me 162 references to TableColumn#pack() where all of these has to be "fixed" this way then or are prone to the same error.
|
Yes, I'm not happy to see such changes in client code that worked well in the past. This doesn't feel right. How many other place are affected? |
|
@laeubi : Of course it would be better if we could investigate and fix every bug, but in the reality most of us have no resources to do so. I'm unable to spend time on investigating some probably weird SWT / GTK specific issue which from my experience is non trivial and at the end might even has no fix at all because it would require GTK fix and that will never happen. I'm unaware about other issues in SDK that result in the StackOverflow. By blocking this trivial workaround you accepting that we will continue ship SDK with a known error and users will run into it. If you have time to inestigate this issue and would commit to provide SWT or JFace fix for it for 4.38, it is OK to block. |
merks
left a comment
There was a problem hiding this comment.
Does line securedColumn.getColumn().pack() at line 621 have the same problem when turning to the other tab?
This feels like treating a symptom and hoping the disease has no impact elsewhere.
No. I guess that Calling |
|
Here is what I've seen in debugger that unbreaks the loop for me: eclipse-platform/eclipse.platform.ui#3283 I have NO IDEA if and how that will work in all other possible cases / platforms, so I do not plan to work on that. |
|
Closing in favour eclipse-platform/eclipse.platform.ui#3283 |
Something goes wrong on SWT Column/Table GTK code if column is being packed on not yet shown table. So let pack() the column on a next call on Linux.
Fixes #946