summaryrefslogtreecommitdiff
path: root/target-sparc
diff options
context:
space:
mode:
authorArtyom Tarasenko <atar4qemu@googlemail.com>2010-01-22 22:31:53 +0100
committerBlue Swirl <blauwirbel@gmail.com>2010-01-23 08:11:06 +0000
commit15e7c45139c74552dccb10a82c7631a68c18170a (patch)
tree37347127ef27cc32c7d7a01ecabfa2ca306544ed /target-sparc
parent204c7a39d04a38af023fde0e56b3e8dfb2900782 (diff)
sparc32 fix np dereference in do_unassigned_access
fix a potential null pointer dereference introduced in commit 576c2cdc767ab9e2dc038fa4c99f22e53287a3de Signed-off-by: Artyom Tarasenko <atar4qemu@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'target-sparc')
-rw-r--r--target-sparc/op_helper.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index ce8c6f1aca..eb4f5a4338 100644
--- a/target-sparc/op_helper.c
+++ b/target-sparc/op_helper.c
@@ -3761,13 +3761,14 @@ void do_unassigned_access(target_phys_addr_t addr, int is_write, int is_exec,
else
raise_exception(TT_DATA_ACCESS);
}
- env = saved_env;
/* flush neverland mappings created during no-fault mode,
so the sequential MMU faults report proper fault types */
if (env->mmuregs[0] & MMU_NF) {
tlb_flush(env, 1);
}
+
+ env = saved_env;
}
#else
void do_unassigned_access(target_phys_addr_t addr, int is_write, int is_exec,