summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorRaphael <raphael@google.com>2011-10-27 17:01:31 -0700
committerRaphael Moll <raphael@google.com>2011-12-11 13:59:02 -0800
commit7c3bef85dab709326e052fec1fdc8b32e47c811e (patch)
tree4734f2c57dbd3c3cdabf3ad7232a890cab3807b3 /tools
parenta5cbf023e349f2394ba6fc58d73b4375cfec4369 (diff)
downloadframeworks_base-7c3bef85dab709326e052fec1fdc8b32e47c811e.zip
frameworks_base-7c3bef85dab709326e052fec1fdc8b32e47c811e.tar.gz
frameworks_base-7c3bef85dab709326e052fec1fdc8b32e47c811e.tar.bz2
Merge "AAPT fix printf %zd crash on Windows". Do not merge.
There's no printf %zd on Mingw/Cygwin so the verbose printf crashes aapt. SDK bugs: 20395, 20986 Bug: 5742142 (cherry picked from commit f51125d8429ffa71c57ba6fbdca9effc72642a9b) Change-Id: I7545734ce8ce4a1f3e95f8a255daa8a909f870a1
Diffstat (limited to 'tools')
-rw-r--r--tools/aapt/Resource.cpp16
-rw-r--r--tools/aapt/StringPool.cpp10
2 files changed, 21 insertions, 5 deletions
diff --git a/tools/aapt/Resource.cpp b/tools/aapt/Resource.cpp
index 887fa74..1ecf7da 100644
--- a/tools/aapt/Resource.cpp
+++ b/tools/aapt/Resource.cpp
@@ -14,6 +14,14 @@
#include "FileFinder.h"
#include "CacheUpdater.h"
+#if HAVE_PRINTF_ZD
+# define ZD "%zd"
+# define ZD_TYPE ssize_t
+#else
+# define ZD "%ld"
+# define ZD_TYPE long
+#endif
+
#define NOISY(x) // x
// ==========================================================================
@@ -566,11 +574,11 @@ static bool applyFileOverlay(Bundle *bundle,
DefaultKeyedVector<AaptGroupEntry, sp<AaptFile> > baseFiles =
baseGroup->getFiles();
for (size_t i=0; i < baseFiles.size(); i++) {
- printf("baseFile %zd has flavor %s\n", i,
+ printf("baseFile " ZD " has flavor %s\n", (ZD_TYPE) i,
baseFiles.keyAt(i).toString().string());
}
for (size_t i=0; i < overlayFiles.size(); i++) {
- printf("overlayFile %zd has flavor %s\n", i,
+ printf("overlayFile " ZD " has flavor %s\n", (ZD_TYPE) i,
overlayFiles.keyAt(i).toString().string());
}
}
@@ -584,8 +592,8 @@ static bool applyFileOverlay(Bundle *bundle,
keyAt(overlayGroupIndex));
if (baseFileIndex < UNKNOWN_ERROR) {
if (bundle->getVerbose()) {
- printf("found a match (%zd) for overlay file %s, for flavor %s\n",
- baseFileIndex,
+ printf("found a match (" ZD ") for overlay file %s, for flavor %s\n",
+ (ZD_TYPE) baseFileIndex,
overlayGroup->getLeaf().string(),
overlayFiles.keyAt(overlayGroupIndex).toString().string());
}
diff --git a/tools/aapt/StringPool.cpp b/tools/aapt/StringPool.cpp
index d067d59..9a0a1c4 100644
--- a/tools/aapt/StringPool.cpp
+++ b/tools/aapt/StringPool.cpp
@@ -8,6 +8,14 @@
#include <utils/ByteOrder.h>
+#if HAVE_PRINTF_ZD
+# define ZD "%zd"
+# define ZD_TYPE ssize_t
+#else
+# define ZD "%ld"
+# define ZD_TYPE long
+#endif
+
#define NOISY(x) //x
void strcpy16_htod(uint16_t* dst, const uint16_t* src)
@@ -30,7 +38,7 @@ void printStringPool(const ResStringPool* pool)
str = String8(pool->stringAt(s, &len)).string();
}
- printf("String #%zd: %s\n", s, str);
+ printf("String #" ZD ": %s\n", (ZD_TYPE) s, str);
}
}