From a710ad381fee21c84aa9a338400dfb298139989c Mon Sep 17 00:00:00 2001 From: Quentin Smith Date: Sat, 19 Mar 2011 17:26:21 -0400 Subject: [PATCH] Handle remctl results that are larger than a single pipe buffer --- debian/changelog | 7 +++++++ python/invirt/remctl.py | 12 ++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/debian/changelog b/debian/changelog index 5030879..45acfb1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +invirt-base (0.0.35) unstable; urgency=low + + * Patch from Austin Chu to handle remctl results that are + larger than a single pipe buffer. + + -- Quentin Smith Sat, 19 Mar 2011 17:23:51 -0400 + invirt-base (0.0.34) unstable; urgency=low * Depend on pkg_resources diff --git a/python/invirt/remctl.py b/python/invirt/remctl.py index d530d7a..956ca2d 100644 --- a/python/invirt/remctl.py +++ b/python/invirt/remctl.py @@ -35,11 +35,11 @@ def remctl(host, *args, **kws): + list(args), stdout=subprocess.PIPE, stderr=subprocess.PIPE) - v = p.wait() + stdout, stderr = p.communicate() if kws.get('err'): - return p.stdout.read(), p.stderr.read() - if v: - print >> sys.stderr, 'Error', v, 'on remctl', args, ':' - print >> sys.stderr, p.stderr.read() + return stdout, stderr + if p.returncode: + print >> sys.stderr, 'Error', p.returncode, 'on remctl', args, ':' + print >> sys.stderr, stderr raise CodeError('ERROR on remctl') - return p.stdout.read() + return stdout -- 1.7.9.5