diff --git a/platform/diff-impl/src/com/intellij/diff/tools/binary/TwosideBinaryDiffViewer.java b/platform/diff-impl/src/com/intellij/diff/tools/binary/TwosideBinaryDiffViewer.java index 969776904317..03c0fe69d5f3 100644 --- a/platform/diff-impl/src/com/intellij/diff/tools/binary/TwosideBinaryDiffViewer.java +++ b/platform/diff-impl/src/com/intellij/diff/tools/binary/TwosideBinaryDiffViewer.java @@ -41,6 +41,7 @@ import com.intellij.openapi.progress.ProcessCanceledException; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.project.DumbAwareAction; import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.util.NullableComputable; import com.intellij.openapi.util.io.FileUtilRt; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.util.ThreeState; @@ -136,14 +137,14 @@ public class TwosideBinaryDiffViewer extends TwosideDiffViewer "Files are too large to compare"); } else { contentsEquals = DiffUtil.compareStreams(() -> DiffUtil.getFileInputStream(file1), () -> DiffUtil.getFileInputStream(file2)); } return new ComparisonData(ThreeState.fromBoolean(contentsEquals), - contentsEquals ? DiffBundle.message("diff.contents.are.identical.message.text") : null); + () -> contentsEquals ? DiffBundle.message("diff.contents.are.identical.message.text") : null); } catch (IOException e) { LOG.warn(e); @@ -171,8 +172,8 @@ public class TwosideBinaryDiffViewer extends TwosideDiffViewer null); + public static final ComparisonData ERROR = new ComparisonData(ThreeState.UNSURE, () -> DiffBundle.message("diff.cant.calculate.diff")); @NotNull public final ThreeState isContentsEqual; - @Nullable public final String notification; + @NotNull public final NullableComputable notification; - private ComparisonData(@NotNull ThreeState isContentsEqual, @Nullable String notification) { + private ComparisonData(@NotNull ThreeState isContentsEqual, @NotNull NullableComputable notification) { this.isContentsEqual = isContentsEqual; this.notification = notification; }