diff --git a/source/blender/draw/engines/workbench/shaders/workbench_shadow_geom.glsl b/source/blender/draw/engines/workbench/shaders/workbench_shadow_geom.glsl
index 7418f86a58e..a252f2a3397 100644
--- a/source/blender/draw/engines/workbench/shaders/workbench_shadow_geom.glsl
+++ b/source/blender/draw/engines/workbench/shaders/workbench_shadow_geom.glsl
@@ -4,26 +4,20 @@
#define USE_INVOC_EXT
#endif
-#ifdef DOUBLE_MANIFOLD
-# ifdef USE_INVOC_EXT
-# define invoc_len 2
-# else
-# define vert_len 8
-# endif
-#else
-# ifdef USE_INVOC_EXT
-# define invoc_len 1
+#ifdef USE_INVOC_EXT
+# ifdef DOUBLE_MANIFOLD
+layout(lines_adjacency, invocations = 4) in;
# else
-# define vert_len 4
+layout(lines_adjacency, invocations = 1) in;
# endif
-#endif
-
-#ifdef USE_INVOC_EXT
-layout(lines_adjacency, invocations = invoc_len) in;
layout(triangle_strip, max_vertices = 4) out;
#else
layout(lines_adjacency) in;
-layout(triangle_strip, max_vertices = vert_len) out;
+# ifdef DOUBLE_MANIFOLD
+layout(triangle_strip, max_vertices = 8) out;
+# else
+layout(triangle_strip, max_vertices = 4) out;
+# endif
#endif
uniform vec3 lightDirection = vec3(0.57, 0.57, -0.57);