8185706: [windows] Native callstacks printing terminates prematurely
authorstuefe
Wed, 02 Aug 2017 10:17:14 +0200
changeset 46792 1f9002906ea9
parent 46791 e1b555ed3e50
child 46793 27a0fdda79c3
8185706: [windows] Native callstacks printing terminates prematurely Reviewed-by: iklam, zgu
hotspot/src/os_cpu/windows_x86/vm/os_windows_x86.cpp
--- a/hotspot/src/os_cpu/windows_x86/vm/os_windows_x86.cpp	Thu Aug 10 16:14:52 2017 +0000
+++ b/hotspot/src/os_cpu/windows_x86/vm/os_windows_x86.cpp	Wed Aug 02 10:17:14 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -387,7 +387,7 @@
     intptr_t* fp = (intptr_t*)stk.AddrFrame.Offset; // NOT necessarily the same as ctx.Rbp!
     address pc = (address)stk.AddrPC.Offset;
 
-    if (pc != NULL && sp != NULL && fp != NULL) {
+    if (pc != NULL) {
       if (count == 2 && lastpc == pc) {
         // Skip it -- StackWalk64() may return the same PC
         // (but different SP) on the first try.
@@ -399,8 +399,6 @@
         st->cr();
       }
       lastpc = pc;
-    } else {
-      break;
     }
 
     PVOID p = WindowsDbgHelp::SymFunctionTableAccess64(GetCurrentProcess(), stk.AddrPC.Offset);