diff --git a/vm/Native.c b/vm/Native.c
index 0b10e23..bca45cc 100644
--- a/vm/Native.c
+++ b/vm/Native.c
@@ -407,7 +407,7 @@
     while (pEntry->onLoadResult == kOnLoadPending) {
         LOGD("threadid=%d: waiting for %s OnLoad status\n",
             self->threadId, pEntry->pathName);
-        int oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
+        ThreadStatus oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
         pthread_cond_wait(&pEntry->onLoadCond, &pEntry->onLoadLock);
         dvmChangeStatus(self, oldStatus);
     }
@@ -499,7 +499,7 @@
      * the GC to ignore us.
      */
     Thread* self = dvmThreadSelf();
-    int oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
+    ThreadStatus oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
     handle = dlopen(pathName, RTLD_LAZY);
     dvmChangeStatus(self, oldStatus);
 
diff --git a/vm/Thread.c b/vm/Thread.c
index 56cafb4..7dde87c 100644
--- a/vm/Thread.c
+++ b/vm/Thread.c
@@ -1465,9 +1465,8 @@
      */
     dvmUnlockThreadList();
 
-    int cc, oldStatus;
-    oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
-    cc = pthread_create(&threadHandle, &threadAttr, interpThreadStart,
+    ThreadStatus oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
+    int cc = pthread_create(&threadHandle, &threadAttr, interpThreadStart,
             newThread);
     oldStatus = dvmChangeStatus(self, oldStatus);
 
@@ -1843,7 +1842,7 @@
      * need to initiate a GC.  We switch to VMWAIT while we pause.
      */
     Thread* self = dvmThreadSelf();
-    int oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
+    ThreadStatus oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
     dvmLockThreadList(self);
     while (createStatus == 0)
         pthread_cond_wait(&gDvm.threadStartCond, &gDvm.threadListLock);
diff --git a/vm/alloc/Heap.c b/vm/alloc/Heap.c
index cc3fd72..1f36601 100644
--- a/vm/alloc/Heap.c
+++ b/vm/alloc/Heap.c
@@ -166,16 +166,9 @@
         ThreadStatus oldStatus;
 
         self = dvmThreadSelf();
-        if (self != NULL) {
-            oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
-        } else {
-            LOGI("ODD: waiting on heap lock, no self\n");
-            oldStatus = -1; // shut up gcc
-        }
+        oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
         dvmLockMutex(&gDvm.gcHeapLock);
-        if (self != NULL) {
-            dvmChangeStatus(self, oldStatus);
-        }
+        dvmChangeStatus(self, oldStatus);
     }
 
     return true;
diff --git a/vm/interp/Interp.c b/vm/interp/Interp.c
index da8fa79..e75c91c 100644
--- a/vm/interp/Interp.c
+++ b/vm/interp/Interp.c
@@ -127,7 +127,7 @@
 {
     if (dvmTryLockMutex(&pSet->lock) != 0) {
         Thread* self = dvmThreadSelf();
-        int oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
+        ThreadStatus oldStatus = dvmChangeStatus(self, THREAD_VMWAIT);
         dvmLockMutex(&pSet->lock);
         dvmChangeStatus(self, oldStatus);
     }
