From 846ec24050be8dbdaa00bc4124cfb09a8ab48098 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Mon, 21 Jan 2019 17:08:54 +0700 Subject: [PATCH] Fixed integer multiplication in long context --- .../impl/BaseMoveInitializerToMethodAction.java | 10 +++++++--- .../util/src/com/intellij/openapi/util/IconLoader.java | 2 +- platform/util/src/com/intellij/util/ImageLoader.java | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/intention/impl/BaseMoveInitializerToMethodAction.java b/java/java-impl/src/com/intellij/codeInsight/intention/impl/BaseMoveInitializerToMethodAction.java index be0a89b385e8..41edc52c4ef5 100644 --- a/java/java-impl/src/com/intellij/codeInsight/intention/impl/BaseMoveInitializerToMethodAction.java +++ b/java/java-impl/src/com/intellij/codeInsight/intention/impl/BaseMoveInitializerToMethodAction.java @@ -37,9 +37,10 @@ import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.Collection; import java.util.List; +import java.util.Objects; /** - * refactored from {@link com.intellij.codeInsight.intention.impl.MoveInitializerToConstructorAction} + * refactored from {@link MoveInitializerToConstructorAction} * * @author Danila Ponomarenko */ @@ -83,7 +84,10 @@ public abstract class BaseMoveInitializerToMethodAction extends PsiElementBaseIn if (methodsToAddInitialization.isEmpty()) return; final List assignments = addFieldAssignments(field, methodsToAddInitialization); - field.getInitializer().delete(); + PsiExpression initializer = field.getInitializer(); + if (initializer != null) { + initializer.delete(); + } if (!assignments.isEmpty()) { highlightRExpression((PsiAssignmentExpression)assignments.get(0).getExpression(), project, editor); @@ -131,7 +135,7 @@ public abstract class BaseMoveInitializerToMethodAction extends PsiElementBaseIn initializer = RefactoringUtil.convertInitializerToNormalExpression(initializer, field.getType()); final PsiAssignmentExpression expression = (PsiAssignmentExpression)statement.getExpression(); - expression.getRExpression().replace(initializer); + Objects.requireNonNull(expression.getRExpression()).replace(Objects.requireNonNull(initializer)); final PsiElement newStatement = codeBlock.addBefore(statement, findFirstFieldUsage(codeBlock.getStatements(), field)); replaceWithQualifiedReferences(newStatement, newStatement, factory); diff --git a/platform/util/src/com/intellij/openapi/util/IconLoader.java b/platform/util/src/com/intellij/openapi/util/IconLoader.java index c2340c2a9bea..7095d0237476 100644 --- a/platform/util/src/com/intellij/openapi/util/IconLoader.java +++ b/platform/util/src/com/intellij/openapi/util/IconLoader.java @@ -789,7 +789,7 @@ public final class IconLoader { Image image = loadFromUrl(ctx, isDark()); icon = checkIcon(image, CachedImageIcon.this); - if (icon != null && icon.getIconWidth() * icon.getIconHeight() * 4 < ImageLoader.CACHED_IMAGE_MAX_SIZE) { + if (icon != null && 4L * icon.getIconWidth() * icon.getIconHeight() < ImageLoader.CACHED_IMAGE_MAX_SIZE) { scaledIconsCache.put(key(ctx), new SoftReference(icon)); } return icon; diff --git a/platform/util/src/com/intellij/util/ImageLoader.java b/platform/util/src/com/intellij/util/ImageLoader.java index 3758f69370bc..044f6ca18ad1 100644 --- a/platform/util/src/com/intellij/util/ImageLoader.java +++ b/platform/util/src/com/intellij/util/ImageLoader.java @@ -105,7 +105,7 @@ public class ImageLoader implements Serializable { } Image image = loadImpl(url, stream, scale); if (image != null && cacheKey != null && - image.getWidth(null) * image.getHeight(null) * 4 <= CACHED_IMAGE_MAX_SIZE) + 4L * image.getWidth(null) * image.getHeight(null) <= CACHED_IMAGE_MAX_SIZE) { ourCache.put(cacheKey, image); }