Abort cargo2android.py if the patch fails.
This allows the external_updater to understand that an error occurred.
The pre-patched version of the file will still exist.
Test: Run when a patch fails.
Change-Id: I59cc12eeaa751b5e3e2956060f58981d27875748
diff --git a/scripts/cargo2android.py b/scripts/cargo2android.py
index 7c43aad..2ab58e1 100755
--- a/scripts/cargo2android.py
+++ b/scripts/cargo2android.py
@@ -57,6 +57,7 @@
import platform
import re
import shutil
+import subprocess
import sys
# Some Rust packages include extra unwanted crates.
@@ -1338,8 +1339,8 @@
return self
if self.args.verbose:
print('### INFO: applying local patch file:', self.args.patch)
- os.system('patch -s --no-backup-if-mismatch ./Android.bp ' +
- self.args.patch)
+ subprocess.run(['patch', '-s', '--no-backup-if-mismatch', './Android.bp',
+ self.args.patch], check=True)
return self
def gen_bp(self):