summary refs log tree commit diff stats
path: root/m68k-semi.c
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2011-06-27 11:26:47 -0500
committerAnthony Liguori <aliguori@us.ibm.com>2011-06-27 11:26:47 -0500
commitcd59dd8734bebe5bd06be8a3fa79a9f4facf6633 (patch)
treee533ec4ccc42112dd6a297ed431350e35c49c4bf /m68k-semi.c
parentbb820c03e2d638038fd48f42ee71e4004e55aba8 (diff)
parentbfcedc572bb77f3d21cd3a297b4215389a2f7df4 (diff)
downloadfocaccia-qemu-cd59dd8734bebe5bd06be8a3fa79a9f4facf6633.tar.gz
focaccia-qemu-cd59dd8734bebe5bd06be8a3fa79a9f4facf6633.zip
Merge remote-tracking branch 'riku/linux-user-for-upstream' into staging
Diffstat (limited to 'm68k-semi.c')
-rw-r--r--m68k-semi.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/m68k-semi.c b/m68k-semi.c
index 0371089b98..7fde10e8f3 100644
--- a/m68k-semi.c
+++ b/m68k-semi.c
@@ -370,7 +370,7 @@ void do_m68k_semihosting(CPUM68KState *env, int nr)
         TaskState *ts = env->opaque;
         /* Allocate the heap using sbrk.  */
         if (!ts->heap_limit) {
-            long ret;
+            abi_ulong ret;
             uint32_t size;
             uint32_t base;
 
@@ -379,8 +379,9 @@ void do_m68k_semihosting(CPUM68KState *env, int nr)
             /* Try a big heap, and reduce the size if that fails.  */
             for (;;) {
                 ret = do_brk(base + size);
-                if (ret != -1)
+                if (ret >= (base + size)) {
                     break;
+                }
                 size >>= 1;
             }
             ts->heap_limit = base + size;