Bug 65321 Call hierarchy: close "top" file and it won't open again
Steps: 1. Open a project with JUnit 3.8.1 sources 2. Open junit.framework.Assert 3. Double click fail( String ) method 4. Press Ctrl+Alt+H 5. Close Assert.java 6. In the "Call Hierarchy" view double-click "fail( String )" -- the "root" of the hierarchy Observed: Assert.java does not open Expected: Assert.java should open Build: 200405280010 Was first observed with early M-s (around 5 or 6 maybe)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/callhierarchy/CallHierarchyUI.java
* @return An ISelection containing IMember's in place of MethodWrapper instances.
     */
    static ISelection convertSelection(ISelection selection) {
        if (selection.isEmpty()) {
            return selection;   
        }
        
        if (selection instanceof IStructuredSelection) {
            IStructuredSelection structuredSelection= (IStructuredSelection) selection;
            List javaElements= new ArrayList();
            for (Iterator iter= structuredSelection.iterator(); iter.hasNext();) {
                Object element= iter.next();
                if (element instanceof MethodWrapper) {
                    IMember member= ((MethodWrapper)element).getMember();
                    if (member != null) {
                        javaElements.add(member);
                    }
                } else if (element instanceof IMember) {
                    javaElements.add(element);
                } else if (element instanceof CallLocation) {
                    IMember member = ((CallLocation) element).getMember();
                    javaElements.add(member);
                }
            }
            return new StructuredSelection(javaElements);
        }
        return StructuredSelection.EMPTY; 
    }
}