import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.pointers.VirtualFilePointerManager;
import com.intellij.util.ArrayUtil;
+import com.intellij.util.ObjectUtils;
import com.intellij.util.containers.ContainerUtil;
import org.jdom.Element;
import org.jetbrains.annotations.NotNull;
public LibraryOrderEntry addLibraryEntry(@NotNull Library library) {
assertWritable();
final LibraryOrderEntry libraryOrderEntry = new LibraryOrderEntryImpl(library, this, myProjectRootManager);
- assert libraryOrderEntry.isValid();
+ if (libraryOrderEntry.isValid()) {
+ LibraryEx libraryEx = ObjectUtils.tryCast(library, LibraryEx.class);
+ boolean libraryDisposed = libraryEx != null ? libraryEx.isDisposed() : Disposer.isDisposed(library);
+ throw new AssertionError("Invalid libraryOrderEntry, library: " + library
+ + " of type " + library.getClass()
+ + ", disposed: " + libraryDisposed
+ + ", kind: " + (libraryEx != null ? libraryEx.getKind() : "<undefined>"));
+ }
myOrderEntries.add(libraryOrderEntry);
return libraryOrderEntry;
}