59 def after(self): |
59 def after(self): |
60 self.ui.debug('cleaning up %s\n' % self.tmppath) |
60 self.ui.debug('cleaning up %s\n' % self.tmppath) |
61 shutil.rmtree(self.tmppath, ignore_errors=True) |
61 shutil.rmtree(self.tmppath, ignore_errors=True) |
62 |
62 |
63 def _run(self, cmd, *args, **kwargs): |
63 def _run(self, cmd, *args, **kwargs): |
64 cmdline = 'darcs %s --repodir=%r %s </dev/null' % ( |
64 cmdline = ['darcs', cmd, '--repodir', kwargs.get('repodir', self.path)] |
65 cmd, kwargs.get('repodir', self.path), ' '.join(args)) |
65 cmdline += args |
|
66 cmdline = [util.shellquote(arg) for arg in cmdline] |
|
67 cmdline += ['<', util.nulldev] |
|
68 cmdline = util.quotecommand(' '.join(cmdline)) |
66 self.ui.debug(cmdline, '\n') |
69 self.ui.debug(cmdline, '\n') |
67 return os.popen(cmdline, 'r') |
70 return os.popen(cmdline, 'r') |
68 |
71 |
69 def run(self, cmd, *args, **kwargs): |
72 def run(self, cmd, *args, **kwargs): |
70 fp = self._run(cmd, *args, **kwargs) |
73 fp = self._run(cmd, *args, **kwargs) |