Chromium Code Reviews| Index: build/android/gyp/javac.py |
| diff --git a/build/android/gyp/javac.py b/build/android/gyp/javac.py |
| index f196581113a5dff8bdbf3c3f3143f0dff1e83ba0..a818ff853a4da92f702281e80edf6b874a21872f 100755 |
| --- a/build/android/gyp/javac.py |
| +++ b/build/android/gyp/javac.py |
| @@ -238,11 +238,21 @@ def _OnStaleMd5(changes, options, javac_cmd, java_files, classpath_inputs, |
| if md5_check.PRINT_EXPLANATIONS: |
| stdout_filter = None |
| - build_utils.CheckOutput( |
| + attempt_build = lambda: build_utils.CheckOutput( |
| cmd, |
| print_stdout=options.chromium_code, |
| stdout_filter=stdout_filter, |
| stderr_filter=ColorJavacOutput) |
| + try: |
| + attempt_build() |
| + except build_utils.CalledProcessError as e: |
| + # Work-around for a bug in jmake (http://crbug.com/551449). |
| + if 'project database corrupted' not in e.output: |
| + raise |
| + print ('Applying work-around for jmake project database corrupted ' |
| + '(http://crbug.com/551449).') |
| + os.unlink(pdb_path) |
| + attempt_build() |
|
jbudorick
2015/11/05 20:47:45
Why was the second build not causing failures befo
agrieve
2015/11/05 21:02:10
It was not re-raising the exception :(
|
| if options.main_class or options.manifest_entry: |
| entries = [] |