From b9f6f0eba5436ef4a63fcc87437f28d6f7cbf706 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=2E=C3=87a=C4=9Flar=20Onur?= Date: Sat, 15 Aug 2009 20:26:51 +0000 Subject: [PATCH] handle not-existed working directory problems instead of giving following exceptions Geri izleme verisi: File "/usr/bin/pisi", line 80, in cli.run_command() File "/usr/lib/pardus/pisi/cli/pisicli.py", line 140, in run_command self.command.run() File "/usr/lib/pardus/pisi/cli/build.py", line 114, in run pisi.api.build(x) File "/usr/lib/pardus/pisi/api.py", line 802, in build return pisi.atomicoperations.build(*args, **kw) File "/usr/lib/pardus/pisi/atomicoperations.py", line 612, in build return pisi.operations.build.build(package) File "/usr/lib/pardus/pisi/operations/build.py", line 1035, in build result = pb.build() File "/usr/lib/pardus/pisi/operations/build.py", line 253, in build self.run_setup_action() File "/usr/lib/pardus/pisi/operations/build.py", line 391, in run_setup_action if self.run_action_function(ctx.const.setup_func): File "/usr/lib/pardus/pisi/operations/build.py", line 489, in run_action_function os.chdir(self.srcDir) Geri izleme verisi: File "/usr/bin/pisi", line 80, in cli.run_command() File "/usr/lib/pardus/pisi/cli/pisicli.py", line 140, in run_command self.command.run() File "/usr/lib/pardus/pisi/cli/build.py", line 112, in run pisi.api.build_until(x, ctx.get_option('until')) File "/usr/lib/pardus/pisi/api.py", line 799, in build_until return pisi.operations.build.build_until(*args, **kw) File "/usr/lib/pardus/pisi/operations/build.py", line 1109, in build_until __buildState_unpack(pb, last) File "/usr/lib/pardus/pisi/operations/build.py", line 1059, in __buildState_unpack pb.unpack_source_archive() File "/usr/lib/pardus/pisi/operations/build.py", line 384, in unpack_source_archive if self.apply_patches(): File "/usr/lib/pardus/pisi/operations/build.py", line 607, in apply_patches pisi.util.do_patch(self.srcDir, patchFile, level=patch.level, name=relativePath) File "/usr/lib/pardus/pisi/util.py", line 449, in do_patch os.chdir(sourceDir) --- pisi/operations/build.py | 5 ++++- pisi/util.py | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pisi/operations/build.py b/pisi/operations/build.py index adf9bedb..d3c63273 100644 --- a/pisi/operations/build.py +++ b/pisi/operations/build.py @@ -488,7 +488,10 @@ class Builder: # we'll need our working directory after actionscript # finished its work in the archive source directory. curDir = os.getcwd() - os.chdir(self.srcDir) + if os.path.exists(self.srcDir): + os.chdir(self.srcDir) + else: + raise Error(_("ERROR: WorkDir (%s) does not exist\n") % (self.srcDir)) if func in self.actionLocals: if ctx.get_option('ignore_sandbox') or not ctx.config.values.build.enablesandbox: diff --git a/pisi/util.py b/pisi/util.py index 2809a4ff..bb39d7a2 100644 --- a/pisi/util.py +++ b/pisi/util.py @@ -446,7 +446,10 @@ def uncompress(patchFile, compressType="gz", targetDir=None): def do_patch(sourceDir, patchFile, level=0, name=None): """Apply given patch to the sourceDir.""" cwd = os.getcwd() - os.chdir(sourceDir) + if os.path.exists(sourceDir): + os.chdir(sourceDir) + else: + raise Error(_("ERROR: WorkDir (%s) does not exist\n") % (sourceDir)) if level == None: level = 0