mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[platform] more accurate CPU arch detection (system health)
GitOrigin-RevId: 26c124e321381273034d007a3d1a8f22e5efff17
This commit is contained in:
committed by
intellij-monorepo-bot
parent
c51bbdd143
commit
6fd2c9dd58
@@ -17,6 +17,7 @@ import com.intellij.openapi.extensions.PluginId;
|
||||
import com.intellij.openapi.updateSettings.impl.UpdateChecker;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
import com.intellij.util.io.MappingFailedException;
|
||||
import com.intellij.util.system.CpuArch;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -121,7 +122,7 @@ public class DefaultIdeaErrorLogger implements ErrorLogger {
|
||||
}
|
||||
|
||||
private static void processMappingFailed(IdeaLoggingEvent event) {
|
||||
if (!ourMappingFailedNotificationPosted && SystemInfo.isWindows && SystemInfo.is32Bit) {
|
||||
if (!ourMappingFailedNotificationPosted && SystemInfo.isWindows && CpuArch.isIntel32()) {
|
||||
ourMappingFailedNotificationPosted = true;
|
||||
String exceptionMessage = event.getThrowable().getMessage();
|
||||
String text = DiagnosticBundle.message("notification.content.0.br.possible.cause.unable.to.allocate.memory", exceptionMessage);
|
||||
@@ -129,4 +130,4 @@ public class DefaultIdeaErrorLogger implements ErrorLogger {
|
||||
DiagnosticBundle.message("notification.title.memory.mapping.failed"), text, NotificationType.WARNING), null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ import com.intellij.util.MathUtil;
|
||||
import com.intellij.util.SystemProperties;
|
||||
import com.intellij.util.TimeoutUtil;
|
||||
import com.intellij.util.concurrency.AppExecutorUtil;
|
||||
import com.intellij.util.system.CpuArch;
|
||||
import com.sun.jna.*;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -46,7 +47,7 @@ final class SystemHealthMonitor extends PreloadingActivity {
|
||||
private static final Logger LOG = Logger.getInstance(SystemHealthMonitor.class);
|
||||
|
||||
private static final String DISPLAY_ID = "System Health";
|
||||
private static final int MIN_RESERVED_CODE_CACHE_SIZE = PluginManagerCore.isRunningFromSources() ? 240 : SystemInfo.is64Bit ? 512 : 384;
|
||||
private static final int MIN_RESERVED_CODE_CACHE_SIZE = PluginManagerCore.isRunningFromSources() ? 240 : CpuArch.CURRENT.width == 32 ? 384 : 512;
|
||||
|
||||
@Override
|
||||
public void preload(@NotNull ProgressIndicator indicator) {
|
||||
@@ -90,7 +91,7 @@ final class SystemHealthMonitor extends PreloadingActivity {
|
||||
JdkBundle bundledJre = JdkBundle.createBundled();
|
||||
if (bundledJre != null && bundledJre.isOperational()) {
|
||||
String appName = ApplicationNamesInfo.getInstance().getProductName().toLowerCase(Locale.ENGLISH);
|
||||
String configName = appName + (!SystemInfo.isWindows ? "" : SystemInfo.is64Bit ? "64.exe" : ".exe") + ".jdk";
|
||||
String configName = appName + (!SystemInfo.isWindows ? "" : CpuArch.isIntel64() ? "64.exe" : ".exe") + ".jdk";
|
||||
Path configFile = Paths.get(PathManager.getConfigPath(), configName);
|
||||
if (Files.isRegularFile(configFile)) {
|
||||
switchAction = new NotificationAction(IdeBundle.message("action.SwitchToJBR.text")) {
|
||||
|
||||
Reference in New Issue
Block a user