From f407dcdb6e2d910a3b921d61d7751e5051abd815 Mon Sep 17 00:00:00 2001 From: "Egor.Ushakov" Date: Wed, 15 Apr 2015 18:51:27 +0300 Subject: [PATCH] IDEA-139131 Memory leak if debug session is unable to start --- .../intellij/debugger/impl/DebuggerManagerImpl.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/java/debugger/impl/src/com/intellij/debugger/impl/DebuggerManagerImpl.java b/java/debugger/impl/src/com/intellij/debugger/impl/DebuggerManagerImpl.java index 9c094e255ca9..9b9a45c70c4d 100644 --- a/java/debugger/impl/src/com/intellij/debugger/impl/DebuggerManagerImpl.java +++ b/java/debugger/impl/src/com/intellij/debugger/impl/DebuggerManagerImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2014 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. @@ -240,7 +240,14 @@ public class DebuggerManagerImpl extends DebuggerManagerEx implements Persistent } }); DebuggerSession session = new DebuggerSession(environment.getSessionName(), debugProcess); - final ExecutionResult executionResult = session.attach(environment); + ExecutionResult executionResult; + try { + executionResult = session.attach(environment); + } + catch (ExecutionException e) { + session.dispose(); + throw e; + } if (executionResult == null) { return null; }