summaryrefslogtreecommitdiffstats
path: root/cmds/app_process
diff options
context:
space:
mode:
authorNick Kralevich <nnk@google.com>2013-04-23 17:06:58 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-04-23 17:06:58 -0700
commitfc8bd4d3f4deece8beee7ce3f7888078dd37c60d (patch)
treee45c438d4a34e40694d2f6e859adf50ce844615d /cmds/app_process
parent2ea5aebe59b72c034b32c132c35a5c75a7a2bf56 (diff)
parent35587a0c47c33a8eed7817dc705dbf502f7b5b60 (diff)
downloadframeworks_base-fc8bd4d3f4deece8beee7ce3f7888078dd37c60d.zip
frameworks_base-fc8bd4d3f4deece8beee7ce3f7888078dd37c60d.tar.gz
frameworks_base-fc8bd4d3f4deece8beee7ce3f7888078dd37c60d.tar.bz2
am 35587a0c: Merge "Don\'t set ADDR_COMPAT_LAYOUT on the emulator"
* commit '35587a0c47c33a8eed7817dc705dbf502f7b5b60': Don't set ADDR_COMPAT_LAYOUT on the emulator
Diffstat (limited to 'cmds/app_process')
-rw-r--r--cmds/app_process/app_main.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/cmds/app_process/app_main.cpp b/cmds/app_process/app_main.cpp
index 90bcb0f..28752a5 100644
--- a/cmds/app_process/app_main.cpp
+++ b/cmds/app_process/app_main.cpp
@@ -7,6 +7,7 @@
#define LOG_TAG "appproc"
+#include <cutils/properties.h>
#include <binder/IPCThreadState.h>
#include <binder/ProcessState.h>
#include <utils/Log.h>
@@ -148,7 +149,10 @@ int main(int argc, char* const argv[])
* This breaks some programs which improperly embed
* an out of date copy of Android's linker.
*/
- if (getenv("NO_ADDR_COMPAT_LAYOUT_FIXUP") == NULL) {
+ char value[PROPERTY_VALUE_MAX];
+ property_get("ro.kernel.qemu", value, "");
+ bool is_qemu = (strcmp(value, "1") == 0);
+ if ((getenv("NO_ADDR_COMPAT_LAYOUT_FIXUP") == NULL) && !is_qemu) {
int current = personality(0xFFFFFFFF);
if ((current & ADDR_COMPAT_LAYOUT) == 0) {
personality(current | ADDR_COMPAT_LAYOUT);