diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/patch.bbclass | 5 | ||||
-rw-r--r-- | meta/lib/oe/patch.py | 10 |
2 files changed, 9 insertions, 6 deletions
diff --git a/meta/classes/patch.bbclass b/meta/classes/patch.bbclass index 471c32bce2..1ea4bc5e02 100644 --- a/meta/classes/patch.bbclass +++ b/meta/classes/patch.bbclass | |||
@@ -155,7 +155,10 @@ python patch_do_patch() { | |||
155 | patchset.Import({"file":local, "strippath": parm['striplevel']}, True) | 155 | patchset.Import({"file":local, "strippath": parm['striplevel']}, True) |
156 | except Exception as exc: | 156 | except Exception as exc: |
157 | bb.fatal(str(exc)) | 157 | bb.fatal(str(exc)) |
158 | resolver.Resolve() | 158 | try: |
159 | resolver.Resolve() | ||
160 | except bb.BBHandledException as e: | ||
161 | bb.fatal(str(e)) | ||
159 | } | 162 | } |
160 | patch_do_patch[vardepsexclude] = "PATCHRESOLVE" | 163 | patch_do_patch[vardepsexclude] = "PATCHRESOLVE" |
161 | 164 | ||
diff --git a/meta/lib/oe/patch.py b/meta/lib/oe/patch.py index f4ccb3e183..6f7f90095c 100644 --- a/meta/lib/oe/patch.py +++ b/meta/lib/oe/patch.py | |||
@@ -2,14 +2,14 @@ import oe.path | |||
2 | import os | 2 | import os |
3 | import bb.utils, bb.msg, bb.data, bb.fetch2 | 3 | import bb.utils, bb.msg, bb.data, bb.fetch2 |
4 | 4 | ||
5 | class NotFoundError(Exception): | 5 | class NotFoundError(bb.BBHandledException): |
6 | def __init__(self, path): | 6 | def __init__(self, path): |
7 | self.path = path | 7 | self.path = path |
8 | 8 | ||
9 | def __str__(self): | 9 | def __str__(self): |
10 | return "Error: %s not found." % self.path | 10 | return "Error: %s not found." % self.path |
11 | 11 | ||
12 | class CmdError(Exception): | 12 | class CmdError(bb.BBHandledException): |
13 | def __init__(self, exitstatus, output): | 13 | def __init__(self, exitstatus, output): |
14 | self.status = exitstatus | 14 | self.status = exitstatus |
15 | self.output = output | 15 | self.output = output |
@@ -207,7 +207,7 @@ class QuiltTree(PatchSet): | |||
207 | # read series -> self.patches | 207 | # read series -> self.patches |
208 | seriespath = os.path.join(self.dir, 'patches', 'series') | 208 | seriespath = os.path.join(self.dir, 'patches', 'series') |
209 | if not os.path.exists(self.dir): | 209 | if not os.path.exists(self.dir): |
210 | raise Exception("Error: %s does not exist." % self.dir) | 210 | raise NotFoundError(self.dir) |
211 | if os.path.exists(seriespath): | 211 | if os.path.exists(seriespath): |
212 | series = file(seriespath, 'r') | 212 | series = file(seriespath, 'r') |
213 | for line in series.readlines(): | 213 | for line in series.readlines(): |
@@ -228,7 +228,7 @@ class QuiltTree(PatchSet): | |||
228 | if sys.exc_value.output.strip() == "No patches applied": | 228 | if sys.exc_value.output.strip() == "No patches applied": |
229 | return | 229 | return |
230 | else: | 230 | else: |
231 | raise sys.exc_value | 231 | raise |
232 | output = [val for val in output.split('\n') if not val.startswith('#')] | 232 | output = [val for val in output.split('\n') if not val.startswith('#')] |
233 | for patch in self.patches: | 233 | for patch in self.patches: |
234 | if os.path.basename(patch["quiltfile"]) == output[-1]: | 234 | if os.path.basename(patch["quiltfile"]) == output[-1]: |
@@ -336,7 +336,7 @@ class NOOPResolver(Resolver): | |||
336 | except Exception: | 336 | except Exception: |
337 | import sys | 337 | import sys |
338 | os.chdir(olddir) | 338 | os.chdir(olddir) |
339 | raise sys.exc_value | 339 | raise |
340 | 340 | ||
341 | # Patch resolver which relies on the user doing all the work involved in the | 341 | # Patch resolver which relies on the user doing all the work involved in the |
342 | # resolution, with the exception of refreshing the remote copy of the patch | 342 | # resolution, with the exception of refreshing the remote copy of the patch |