summaryrefslogtreecommitdiff
path: root/tools/aapt2/Main.cpp
diff options
context:
space:
mode:
authorChris Warrington <cmw@google.com>2017-04-27 15:27:01 +0100
committerChris Warrington <cmw@google.com>2017-04-28 10:06:38 +0100
commit820d72adc0eccbfe4ac4238cdc89b7680ea03d9e (patch)
treed7f39f1675f4b0f20f764dfa8b70dfb1a26e14e5 /tools/aapt2/Main.cpp
parent3dfd8275749a734380282437579156b6b35ccc51 (diff)
AAPT2: Error reporting through JNI.
Rather than relying on stderr being wired correctly. Test: Tests for JNI integration in studio-master-dev. Change-Id: I1c7e7130bc4e56d61de259a9596bee3a6b3520fb
Diffstat (limited to 'tools/aapt2/Main.cpp')
-rw-r--r--tools/aapt2/Main.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/tools/aapt2/Main.cpp b/tools/aapt2/Main.cpp
index 87fda16ee956..1965ad941b2e 100644
--- a/tools/aapt2/Main.cpp
+++ b/tools/aapt2/Main.cpp
@@ -19,6 +19,8 @@
#include "androidfw/StringPiece.h"
+#include "Diagnostics.h"
+
namespace aapt {
// DO NOT UPDATE, this is more of a marketing version.
@@ -33,8 +35,8 @@ int PrintVersion() {
return 0;
}
-extern int Compile(const std::vector<android::StringPiece>& args);
-extern int Link(const std::vector<android::StringPiece>& args);
+extern int Compile(const std::vector<android::StringPiece>& args, IDiagnostics* diagnostics);
+extern int Link(const std::vector<android::StringPiece>& args, IDiagnostics* diagnostics);
extern int Dump(const std::vector<android::StringPiece>& args);
extern int Diff(const std::vector<android::StringPiece>& args);
extern int Optimize(const std::vector<android::StringPiece>& args);
@@ -53,9 +55,11 @@ int main(int argc, char** argv) {
android::StringPiece command(argv[0]);
if (command == "compile" || command == "c") {
- return aapt::Compile(args);
+ aapt::StdErrDiagnostics diagnostics;
+ return aapt::Compile(args, &diagnostics);
} else if (command == "link" || command == "l") {
- return aapt::Link(args);
+ aapt::StdErrDiagnostics diagnostics;
+ return aapt::Link(args, &diagnostics);
} else if (command == "dump" || command == "d") {
return aapt::Dump(args);
} else if (command == "diff") {