aboutsummaryrefslogtreecommitdiff
path: root/drivers/android
diff options
context:
space:
mode:
authorRiley Andrews <riandrews@google.com>2015-02-06 14:39:52 -0800
committerMister Oyster <oysterized@gmail.com>2017-04-30 15:56:03 +0200
commit6c2b0050bdeb376d54ed4e30a1903845727553c1 (patch)
tree00e32396ad718e679f6f1e65799b3af9fb44ab0e /drivers/android
parentba8d2b9b20418c662a3f44f5888a301dbdb92217 (diff)
android: binder: fix duplicate error return.
Duplicate errors can be returned to userspace when the thread error code is left set when the read buffer runs out of space. Change-Id: I921effcb6a7d620841177741a5ad5784acc7a907 Signed-off-by: Riley Andrews <riandrews@google.com>
Diffstat (limited to 'drivers/android')
-rw-r--r--drivers/android/binder.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/android/binder.c b/drivers/android/binder.c
index 1a921b0a2..5fc0ab122 100644
--- a/drivers/android/binder.c
+++ b/drivers/android/binder.c
@@ -3626,9 +3626,9 @@ retry:
pr_err("read put err2 %u to user %pK, thread error %u:%u\n",
thread->return_error2, ptr, thread->return_error, thread->return_error2);
binder_stat_br(proc, thread, thread->return_error2);
+ thread->return_error2 = BR_OK;
if (ptr == end)
goto done;
- thread->return_error2 = BR_OK;
}
if (put_user(thread->return_error, (uint32_t __user *)ptr))
return -EFAULT;