diff --git a/src/vkcv/ShaderProgram.cpp b/src/vkcv/ShaderProgram.cpp
index 3d9000b789612646e8a48e44b8c1c1831a08eafa..d22573d28d9a56908a373d6e3bbe0be9e87000ed 100644
--- a/src/vkcv/ShaderProgram.cpp
+++ b/src/vkcv/ShaderProgram.cpp
@@ -183,7 +183,7 @@ namespace vkcv {
                 maxSetID = comp.get_decoration(u.id, spv::DecorationDescriptorSet);
         }
         if (maxSetID != -1) {
-            if(m_DescriptorSets.size() < maxSetID) m_DescriptorSets.resize(maxSetID + 1);
+            if((int32_t)m_DescriptorSets.size() <= maxSetID) m_DescriptorSets.resize(maxSetID + 1);
             for (const auto &binding : bindings) {
                 m_DescriptorSets[binding.first].push_back(binding.second);
             }