mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-14 09:11:27 +00:00
scst_user: Set replies_done to zero if replies_cnt == 0 (merge r8861 from trunk)
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.4.x@8862 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
@@ -2418,13 +2418,13 @@ static int dev_user_reply_get_multi(struct file *file, void __user *arg)
|
||||
replies_done++;
|
||||
}
|
||||
|
||||
get_cmds:
|
||||
TRACE_DBG("Returning %d replies_done", replies_done);
|
||||
res = put_user(replies_done, (int16_t __user *)
|
||||
&((struct scst_user_get_multi __user *)arg)->replies_done);
|
||||
if (unlikely(res < 0))
|
||||
goto out;
|
||||
|
||||
get_cmds:
|
||||
for (i = 0; i < cmds_cnt; i++) {
|
||||
res = dev_user_get_cmd_to_user(dev,
|
||||
&((struct scst_user_get_multi __user *)arg)->cmds[i], i == 0);
|
||||
@@ -2449,10 +2449,14 @@ out:
|
||||
|
||||
out_part_replies_done:
|
||||
TRACE_DBG("Partial returning %d replies_done", replies_done);
|
||||
put_user(replies_done, (int16_t __user *)
|
||||
rc = put_user(replies_done, (int16_t __user *)
|
||||
&((struct scst_user_get_multi __user *)arg)->replies_done);
|
||||
if (unlikely(rc < 0))
|
||||
res = rc;
|
||||
rc = put_user(0, (int16_t __user *)
|
||||
&((struct scst_user_get_multi __user *)arg)->cmds_cnt);
|
||||
if (unlikely(rc < 0))
|
||||
res = rc;
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user