_user_get_safemode_options() would touch the provided buffer even if there was
an error (and thus, would trash it). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12234 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
4d5f980d99
commit
56aa0c51dc
@ -55,8 +55,9 @@ _user_get_safemode_option(const char *userParameter, char *userBuffer, size_t *_
|
||||
originalBufferSize = bufferSize;
|
||||
status_t status = get_safemode_option(parameter, buffer, &bufferSize);
|
||||
|
||||
if (user_strlcpy(userBuffer, buffer, originalBufferSize) < B_OK
|
||||
|| user_memcpy(_userBufferSize, &bufferSize, sizeof(size_t)) < B_OK)
|
||||
if (status == B_OK
|
||||
&& (user_strlcpy(userBuffer, buffer, originalBufferSize) < B_OK
|
||||
|| user_memcpy(_userBufferSize, &bufferSize, sizeof(size_t)) < B_OK))
|
||||
return B_BAD_ADDRESS;
|
||||
|
||||
return status;
|
||||
|
Loading…
x
Reference in New Issue
Block a user