diff --git a/src/thread.cc b/src/thread.cc
index 3bae0af..8974023 100644
--- a/src/thread.cc
+++ b/src/thread.cc
@@ -236,14 +236,16 @@
 
   if (UNLIKELY(pthread_create_result != 0)) {
     // pthread_create(3) failed, so clean up.
-    ScopedObjectAccess soa(env);
-    Object* peer = soa.Decode<Object*>(java_peer);
-    SetVmData(soa, peer, 0);
-    delete native_thread;
+    {
+      ScopedObjectAccess soa(env);
+      Object* peer = soa.Decode<Object*>(java_peer);
+      SetVmData(soa, peer, 0);
 
-    std::string msg(StringPrintf("pthread_create (%s stack) failed: %s",
-                                 PrettySize(stack_size).c_str(), strerror(pthread_create_result)));
-    Thread::Current()->ThrowOutOfMemoryError(msg.c_str());
+      std::string msg(StringPrintf("pthread_create (%s stack) failed: %s",
+                                   PrettySize(stack_size).c_str(), strerror(pthread_create_result)));
+      Thread::Current()->ThrowOutOfMemoryError(msg.c_str());
+    }
+    delete native_thread;
     return;
   }
 }
