mercurial/commands.py
changeset 4056 f1622b4f467d
parent 4055 e37786b29bed
child 4059 431f3c1d3a37
child 4063 96863fc3036a
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2490,7 +2490,11 @@ def unbundle(ui, repo, fname, **opts):
     Apply a compressed changegroup file generated by the bundle
     command.
     """
-    gen = changegroup.readbundle(urllib.urlopen(fname), fname)
+    if os.path.exists(fname):
+        f = open(fname)
+    else:
+        f = urllib.urlopen(fname)
+    gen = changegroup.readbundle(f, fname)
     modheads = repo.addchangegroup(gen, 'unbundle', 'bundle:' + fname)
     return postincoming(ui, repo, modheads, opts['update'])