boolean (BuildRootDescriptor root, File file) { lockData(); try { final boolean added = _addToRecompiled(root, file); if (added) { if (!myDeletedPaths.isEmpty()) { // optimization myDeletedPaths.remove(FileUtil.toCanonicalPath(file.getPath())); } } return added; } finally { unlockData(); } }