diff --git a/_vcsh b/_vcsh
index 3022c6125d6a4a82db9697ee76a5f7c229d12f95..77ff976b21a811518de47d41403f0a5fdfa86c62 100644
--- a/_vcsh
+++ b/_vcsh
@@ -138,7 +138,7 @@ function _vcsh () {
 				_dispatch git git
 			else
 				curcontext="${curcontext%:*:*}:vcsh-${vcshcommand}:"
-				_call_function ret _vcsh-${vcshcommand}
+				_call_function ret _vcsh-${vcshcommand} && (( ret ))
 			fi
 		fi
 	fi