uint32_t error_code)
 {
        struct binder_thread *target_thread;
+       struct binder_transaction *next;
 
        BUG_ON(t->flags & TF_ONE_WAY);
        while (1) {
                                        target_thread->return_error);
                        }
                        return;
-               } else {
-                       struct binder_transaction *next = t->from_parent;
+               }
+               next = t->from_parent;
 
-                       binder_debug(BINDER_DEBUG_FAILED_TRANSACTION,
-                                    "send failed reply for transaction %d, target dead\n",
-                                    t->debug_id);
+               binder_debug(BINDER_DEBUG_FAILED_TRANSACTION,
+                            "send failed reply for transaction %d, target dead\n",
+                            t->debug_id);
 
-                       binder_pop_transaction(target_thread, t);
-                       if (next == NULL) {
-                               binder_debug(BINDER_DEBUG_DEAD_BINDER,
-                                            "reply failed, no target thread at root\n");
-                               return;
-                       }
-                       t = next;
+               binder_pop_transaction(target_thread, t);
+               if (next == NULL) {
                        binder_debug(BINDER_DEBUG_DEAD_BINDER,
-                                    "reply failed, no target thread -- retry %d\n",
-                                     t->debug_id);
+                                    "reply failed, no target thread at root\n");
+                       return;
                }
+               t = next;
+               binder_debug(BINDER_DEBUG_DEAD_BINDER,
+                            "reply failed, no target thread -- retry %d\n",
+                             t->debug_id);
        }
 }