equal
deleted
inserted
replaced
312 self.in_ = in_ |
312 self.in_ = in_ |
313 self.out = out |
313 self.out = out |
314 self.channel = channel |
314 self.channel = channel |
315 |
315 |
316 def __call__(self, cmd, environ, cwd): |
316 def __call__(self, cmd, environ, cwd): |
317 args = [util.quotecommand(cmd), cwd or '.'] |
317 args = [util.quotecommand(cmd), os.path.abspath(cwd or '.')] |
318 args.extend('%s=%s' % (k, v) for k, v in environ.iteritems()) |
318 args.extend('%s=%s' % (k, v) for k, v in environ.iteritems()) |
319 data = '\0'.join(args) |
319 data = '\0'.join(args) |
320 self.out.write(struct.pack('>cI', self.channel, len(data))) |
320 self.out.write(struct.pack('>cI', self.channel, len(data))) |
321 self.out.write(data) |
321 self.out.write(data) |
322 self.out.flush() |
322 self.out.flush() |