OpenProjectList.getOpenProjects acquires a monitor: OpenProjectList. Yet OpenProjectList.close, which holds that monitor (and also acquires OpenProjectList.RecentProjectList), calls foreign code (ProjectInfo.getDisplayName) which might acquire locks of its own.
Probably too risky for 6.9 to rewrite lock semantics of OPL. But should be safe to call the ProjectInformation methods outside of the lock. core-main #5f2e839e0833
Integrated into 'main-golden', will be available in build *201005100200* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)