diff --git a/layers/swapchain.cpp b/layers/swapchain.cpp
index 3143741..304f96b 100644
--- a/layers/swapchain.cpp
+++ b/layers/swapchain.cpp
@@ -130,6 +130,7 @@
     uint32_t debug_action = 0;
     FILE *log_output = NULL;
     const char *option_str;
+    VkDbgMsgCallback callback;
 
     // Initialize Swapchain options:
     report_flags = getLayerOptionFlags("SwapchainReportFlags", 0);
@@ -142,7 +143,12 @@
         log_output = getLayerLogOutput(option_str, "Swapchain");
         layer_create_msg_callback(my_data->report_data, report_flags,
                                   log_callback, (void *) log_output,
-                                  &my_data->logging_callback);
+                                  &callback);
+        my_data->logging_callback.push_back(callback);
+    }
+    if (debug_action & VK_DBG_LAYER_ACTION_DEBUG_OUTPUT) {
+        layer_create_msg_callback(my_data->report_data, report_flags, win32_debug_output_msg, NULL, &callback);
+        my_data->logging_callback.push_back(callback);
     }
 }
 
@@ -244,8 +250,10 @@
 
         // Clean up logging callback, if any
         layer_data *my_data = get_my_data_ptr(key, layer_data_map);
-        if (my_data->logging_callback) {
-            layer_destroy_msg_callback(my_data->report_data, my_data->logging_callback);
+        while (my_data->logging_callback.size() > 0) {
+            VkDbgMsgCallback callback = my_data->logging_callback.back();
+            layer_destroy_msg_callback(my_data->report_data, callback);
+            my_data->logging_callback.pop_back();
         }
         layer_debug_report_destroy_instance(my_data->report_data);
         layer_data_map.erase(key);
diff --git a/layers/swapchain.h b/layers/swapchain.h
index 80a6ea4..21a2fe6 100644
--- a/layers/swapchain.h
+++ b/layers/swapchain.h
@@ -28,6 +28,8 @@
 #ifndef SWAPCHAIN_H
 #define SWAPCHAIN_H
 
+#include <vector>
+
 static const VkLayerProperties globalLayerProps[] = {
     {
         "Swapchain",
@@ -77,11 +79,10 @@
 // The following is for logging error messages:
 struct layer_data {
     debug_report_data *report_data;
-    VkDbgMsgCallback logging_callback;
+    std::vector<VkDbgMsgCallback> logging_callback;
 
     layer_data() :
-        report_data(nullptr),
-        logging_callback(nullptr)
+        report_data(nullptr)
     {};
 };
 
