This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | When second source is opened in Source Editor IDE hangs in MDI. | ||
---|---|---|---|
Product: | platform | Reporter: | mslama <mslama> |
Component: | -- Other -- | Assignee: | mslama <mslama> |
Status: | CLOSED FIXED | ||
Severity: | blocker | CC: | dsimonek, jchalupa, rdankanin |
Priority: | P1 | ||
Version: | 3.x | ||
Hardware: | PC | ||
OS: | Linux | ||
Issue Type: | DEFECT | Exception Reporter: |
Description
mslama
2001-05-04 10:50:17 UTC
I investigated it further and it is caused by infinite loop when method JInternalFrame.setSelected is called from TopComponent.requestFocus. I filed bug4454403 against JDK 1.4.0-beta-b63 to Bugtraq. It happens only on Linux in MDI mode. (At least so far we did not see it on Solaris and Win2000. Target milestone -> 3.3 Also some other actions can be severely limited by this bug in MDI mode. Last I saw on Linux and Solaris is "Dock into new Split frame". It does not happen always but often. It can hang IDE or even system or it can notify Stack overflow exception. So it is possible that some new bugs will be duplicate of this issue. The root cause is focus problem in JDK. It is filed in bugtraq as bug #4453933 and it is accepted by JDK team as bug in JDK. It should be solved in beta2. Added workaround to merlin branch. Change in org.openide.windows.TopComponent method requestFocus() commented call of super.requestFocus(). CVS rev.1.57.6.1 *** Issue 11907 has been marked as a duplicate of this issue. *** Set as FIXED. It will closed as it will be fixed in JDK 1.4.0. added keyword to remind verifying after fixing in jdk1.4 *** Issue 13213 has been marked as a duplicate of this issue. *** Now focus problem in JDK 1.4.0 b70 is fixed. However due to change in behaviour of JComponent.setRequestFocusEnabled when there is no subcomponent in TopComponent it gets into infinite cycle in MDI when TopComponent is selected by mouse click. (It is caused by call of JInternalFrame.restoreSubcomponentFocus.) In JDK 1.4.0 there is method Component.setFocusable but we cannot use it because we need to keep source code compatibility with JDK 1.3.1. Solution is to stop recursion in TopComponent.requestFocus. Fixed in org.openide.windows.TopComponent.requestFocus() - recursion stopped using flag. verified - rev 1.59 (#20010717) Roberte, can you verify it on 1.4 and winsys, thanks. Resolved for 3.4.x or earlier, no new info since then -> closing. |