OSDN Git Service

ART: Stash any exception before dumping a stack
authorAndreas Gampe <agampe@google.com>
Fri, 3 Oct 2014 04:00:06 +0000 (21:00 -0700)
committerBrian Carlstrom <bdc@google.com>
Sun, 12 Oct 2014 21:11:29 +0000 (14:11 -0700)
commit986c6fbb5f65006165f8b7fed1fd105fb3a83bd9
treec28ceb501be5d846b4f3fb7ad45b0f9e8c04b4bd
parentb71c9d7a6a26070d302b97a95a0fecc0acc73e87
ART: Stash any exception before dumping a stack

Dumping a managed stack entails dumping held locks, in the process
of which the verifier will be run. The verifier works under the
assumption that there were no exceptions when started. This
assumption is violated for example on certain JNI aborts.

The solution is to stash any pending exception before dumping the
stack, and re-installing it afterwards.

Bug: 17669899

(cherry picked from commit d87bc135dba41f0f21cf0018a3b2cb46809890d7)

Change-Id: Ic44780bad90a8e1ba80858c807e2bef3bf6651c6
runtime/thread.cc