--- work.9c09578011b5/projectui/src/org/netbeans/modules/project/ui/OpenProjectList.java 2008-04-02 14:32:42.000000000 +0200 +++ /usr/local/space/sources/hg/work/projectui/src/org/netbeans/modules/project/ui/OpenProjectList.java 2008-04-02 12:00:39.000000000 +0200 @@ -770,16 +770,34 @@ public final class OpenProjectList { pchSupport.firePropertyChange( PROPERTY_MAIN_PROJECT, null, null ); } - public synchronized List getRecentProjects() { - return recentProjects.getProjects(); + public List getRecentProjects() { + return ProjectManager.mutex().readAccess(new Mutex.Action() { + public List run() { + synchronized (OpenProjectList.class) { + return recentProjects.getProjects(); + } + } + }); } - public synchronized boolean isRecentProjectsEmpty() { - return recentProjects.isEmpty(); + public boolean isRecentProjectsEmpty() { + return ProjectManager.mutex().readAccess(new Mutex.Action() { + public Boolean run() { + synchronized (OpenProjectList.class) { + return recentProjects.isEmpty(); + } + } + }); } - public synchronized List getRecentProjectsInformation() { - return recentProjects.getRecentProjectsInfo(); + public List getRecentProjectsInformation() { + return ProjectManager.mutex().readAccess(new Mutex.Action() { + public List run() { + synchronized (OpenProjectList.class) { + return recentProjects.getRecentProjectsInfo(); + } + } + }); } /** As this class is singletnon, which is not GCed it is good idea to