diff --git a/plugins/capistrano/_capistrano b/plugins/capistrano/_capistrano
index 2ae977fc..cf6b50c7 100644
--- a/plugins/capistrano/_capistrano
+++ b/plugins/capistrano/_capistrano
@@ -1,17 +1,8 @@
 #compdef cap
 #autoload
 
-_cap_does_task_list_need_generating () {
-  if [ ! -f .cap_tasks~ ]; then return 0;
-  else
-    accurate=$(stat -f%m .cap_tasks~)
-    changed=$(stat -f%m config/deploy.rb)
-    return $(expr $accurate '>=' $changed)
-  fi
-}
-
 if [ -f config/deploy.rb ]; then
-  if _cap_does_task_list_need_generating; then
+  if [[ ! -f .cap_tasks~ || config/deploy.rb -nt .cap_tasks~ ]]; then
     echo "\nGenerating .cap_tasks~..." > /dev/stderr
     cap --tasks | grep '#' | cut -d " " -f 2 > .cap_tasks~
   fi