From c4a72f57bee753daf09ffbc2a2dfe65ed1582919 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=ED=98=95=EC=A3=BC/Common=20Platform=20Lab=28SR?= =?UTF-8?q?=29/Staff=20Engineer/=EC=82=BC=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Tue, 30 Jun 2020 06:43:30 +0900 Subject: [Tizen] Fix crash on accessing 0x0 while unwinding (#287) Change-Id: I663d0fcdcd6fd8fb4c521d9bdbb4d234c96022ae --- src/pal/src/libunwind/src/x86/Gos-linux.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/pal/src/libunwind/src/x86/Gos-linux.c b/src/pal/src/libunwind/src/x86/Gos-linux.c index fb9a5e3461..4720370057 100644 --- a/src/pal/src/libunwind/src/x86/Gos-linux.c +++ b/src/pal/src/libunwind/src/x86/Gos-linux.c @@ -59,7 +59,9 @@ unw_is_signal_frame (unw_cursor_t *cursor) if SA_SIGINFO is specified. */ ip = c->dwarf.ip; - if ((*a->access_mem) (as, ip, &w0, 0, arg) < 0 + + if (!ip + || (*a->access_mem) (as, ip, &w0, 0, arg) < 0 || (*a->access_mem) (as, ip + 4, &w1, 0, arg) < 0) ret = 0; else -- cgit v1.2.3