summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--g_common/g_common.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/g_common/g_common.py b/g_common/g_common.py
index c1df781..33b7664 100644
--- a/g_common/g_common.py
+++ b/g_common/g_common.py
@@ -97,11 +97,8 @@ def generate_tree(repo_location,generate_manifest,generate_metadata):
#create directory structure
packages_list_pipe=subprocess.Popen(driver_conf['exec']+' '+repo_location+' list-packages',shell=True,stdout=subprocess.PIPE)
- os.waitpid(packages_list_pipe.pid,0)
- if packages_list_pipe.returncode:
- return returncode
packages=[]
- for line in packages_list_pipe.stdout:
+ for line in iter(packages_list_pipe.stdout.readline,''):
category=line[:line.find("/")]
package=line[line.find("/")+1:line.find(" ")]
version=line[line.find(" ")+1:-1]
@@ -109,6 +106,9 @@ def generate_tree(repo_location,generate_manifest,generate_metadata):
packages.append(line)
if not os.path.exists(ebuild_dir): #obvious race condition, but whatever
os.makedirs(ebuild_dir)
+ os.waitpid(packages_list_pipe.pid,0)
+ if packages_list_pipe.returncode:
+ return returncode
os.makedirs(os.path.join(repo_location,'profiles'))
#call driver generate-metadata to give it a chance to fill up the repo