private boolean findEntries (Checker checker) {
//        assert jar != null;
        if (jar == null) init (null);
        entries = new ArrayList();
        try {
            int ix = 0;
            for (Enumeration en=jar.entries(); en.hasMoreElements();) {
                JarEntry entry = (JarEntry) en.nextElement();
                ix++;
                if (ix == 30 && checker != null) {
                    //fudge the scroll bar on a magic number...
                    checker.enqueueNotify(75, null);
                }
                if (entry.getName().endsWith(".class") && entry.getName().indexOf('$') < 0) {
                    entries.add (entry);
                }
            }
        } catch (RuntimeException ioe) {
            ioe.printStackTrace();
            problem = ioe.getMessage();
            if (checker != null) {
                checker.enqueueNotify(Integer.MIN_VALUE, problem);
            }
            return false;
        }
        return true;
    }