diff --git a/platform/diff-impl/src/com/intellij/diff/merge/TextMergeTool.java b/platform/diff-impl/src/com/intellij/diff/merge/TextMergeTool.java index a0c1ca24d1b3..26e58ddabf0e 100644 --- a/platform/diff-impl/src/com/intellij/diff/merge/TextMergeTool.java +++ b/platform/diff-impl/src/com/intellij/diff/merge/TextMergeTool.java @@ -701,13 +701,18 @@ public class TextMergeTool implements MergeTool { } private void registerUndoRedo(final boolean undo) { + Project project = getProject(); + if (project == null) { + return; + } + List affectedChanges = getAffectedChanges(); final List states = new ArrayList(affectedChanges.size()); for (TextMergeChange change : affectedChanges) { states.add(change.storeState()); } - UndoManager.getInstance(getProject()).undoableActionPerformed(new BasicUndoableAction(myDocument) { + UndoManager.getInstance(project).undoableActionPerformed(new BasicUndoableAction(myDocument) { @Override public void undo() throws UnexpectedUndoException { if (undo) restoreStates(states); diff --git a/platform/platform-api/src/com/intellij/openapi/command/undo/UndoManager.java b/platform/platform-api/src/com/intellij/openapi/command/undo/UndoManager.java index bcbe7afb9d6e..b6f60a55f968 100644 --- a/platform/platform-api/src/com/intellij/openapi/command/undo/UndoManager.java +++ b/platform/platform-api/src/com/intellij/openapi/command/undo/UndoManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2015 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,12 +21,13 @@ import com.intellij.openapi.fileEditor.FileEditor; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.Key; import com.intellij.openapi.util.Pair; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public abstract class UndoManager { public static final Key ORIGINAL_DOCUMENT = new Key("ORIGINAL_DOCUMENT"); - public static UndoManager getInstance(Project project) { + public static UndoManager getInstance(@NotNull Project project) { return project.getComponent(UndoManager.class); }