summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--util.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/util.c b/util.c
index 3e6269f..2abfce3 100644
--- a/util.c
+++ b/util.c
@@ -831,6 +831,11 @@ umoven(struct tcb *tcp, long addr, int len, char *laddr)
char x[sizeof(long)];
} u;
+#if SUPPORTED_PERSONALITIES > 1
+ if (personality_wordsize[current_personality] < sizeof(addr))
+ addr &= (1ul << 8 * personality_wordsize[current_personality]) - 1;
+#endif
+
if (!process_vm_readv_not_supported) {
struct iovec local[1], remote[1];
int r;
@@ -855,11 +860,6 @@ umoven(struct tcb *tcp, long addr, int len, char *laddr)
}
vm_readv_didnt_work:
-#if SUPPORTED_PERSONALITIES > 1
- if (personality_wordsize[current_personality] < sizeof(addr))
- addr &= (1ul << 8 * personality_wordsize[current_personality]) - 1;
-#endif
-
started = 0;
if (addr & (sizeof(long) - 1)) {
/* addr not a multiple of sizeof(long) */