--- Completion/Unix/Type/_tar_archive.orig	Fri Aug  4 08:41:07 2006
+++ Completion/Unix/Type/_tar_archive	Tue Jul 24 15:34:29 2007
@@ -14,15 +14,8 @@
 _description files expl 'archive file'
 
 if [[ "$1" = *[urtx]* ]]; then
-  if [[ "$1" = *[zZ]* ]]; then
-    _files "$expl[@]" -g '*.((tar|TAR).(gz|GZ|Z)|tgz)(-.)'
-  elif [[ "$1" = *[Ijy]* ]]; then
-    _files "$expl[@]" -g '*.(tar|TAR).bz2(-.)'
-  elif [[ "$_cmd_variant[$service]" == gnu ]]; then
-    _files "$expl[@]" -g '*.((tar|TAR)(.gz|.GZ|.Z|.bz2|)|tgz)(-.)'
-  else
-    _files "$expl[@]" -g '*.(tar|TAR)(-.)'
-  fi
+  # bsdtar/libarchive handle these automagically
+  _files "$expl[@]" -g '*.((tar|TAR|iso|ISO|cpio).(|(gz|GZ|Z|bz2))|tgz|tbz|jar|zip)(-.)'
 else
   _files "$expl[@]"
 fi
