瀏覽代碼

fix borg key/debug/benchmark crashing without subcommand, fixes #2240

(cherry picked from commit a38a7d0293dd6245d31d7ea34f0cab240e969797)
Thomas Waldmann 8 年之前
父節點
當前提交
1e44ea8869
共有 1 個文件被更改,包括 4 次插入3 次删除
  1. 4 3
      borg/archiver.py

+ 4 - 3
borg/archiver.py

@@ -2075,10 +2075,11 @@ class Archiver:
             args = self.preprocess_args(args)
         parser = self.build_parser(args)
         args = parser.parse_args(args or ['-h'])
-        if args.func == self.do_create:
+        # This works around http://bugs.python.org/issue9351
+        func = getattr(args, 'func', None) or getattr(args, 'fallback_func')
+        if func == self.do_create and not args.paths:
             # need at least 1 path but args.paths may also be populated from patterns
-            if not args.paths:
-                parser.error('Need at least one PATH argument.')
+            parser.error('Need at least one PATH argument.')
         return args
 
     def run(self, args):