From abe5374c792094826bc7c96d36d44473757f4c91 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Mon, 30 Oct 2017 18:56:01 -0400 Subject: [PATCH] Ensure parent context of bootstrap context is closed. fixes gh-267 --- .../cloud/context/refresh/ContextRefresher.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java b/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java index 2b7b59a3..a6ab3737 100644 --- a/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java +++ b/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java @@ -105,7 +105,20 @@ public class ContextRefresher { } finally { ConfigurableApplicationContext closeable = capture; - closeable.close(); + while (closeable != null) { + try { + closeable.close(); + } + catch (Exception e) { + // Ignore; + } + if (closeable.getParent() instanceof ConfigurableApplicationContext) { + closeable = (ConfigurableApplicationContext) closeable.getParent(); + } + else { + break; + } + } } }