From e5e7f10588093b421b70b3601e7962e740ba3907 Mon Sep 17 00:00:00 2001 From: nihuini Date: Sun, 7 Apr 2024 19:39:15 +0800 Subject: [PATCH] guard destroy_pipeline --- src/layer.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/layer.cpp b/src/layer.cpp index 3dc0ac4d452..e98aeaea07c 100644 --- a/src/layer.cpp +++ b/src/layer.cpp @@ -408,7 +408,21 @@ class Layer_final : public Layer #if NCNN_VULKAN if (layer_vulkan) { - return layer_vulkan->destroy_pipeline(opt); + int ret = 0; + if (vkdev) + { + ret = layer_vulkan->destroy_pipeline(opt); + } + + if (!support_vulkan || !vkdev) + { + // fallback to cpu layer + delete layer_vulkan; + layer_vulkan = 0; + } + + if (ret) + return ret; } #endif // NCNN_VULKAN