cellOskDialogUnloadAsync: guarantee 0 terminated return string

This commit is contained in:
Megamouse 2019-01-12 12:00:50 +01:00
commit d7cc97433d

View file

@ -238,13 +238,21 @@ error_code getText(vm::ptr<CellOskDialogCallbackReturnParam> OutputInfo, bool is
{ {
osk->osk_text_old[i] = osk->osk_text[i]; osk->osk_text_old[i] = osk->osk_text[i];
if (do_copy && i < OutputInfo->numCharsResultString) if (do_copy)
{ {
if (osk->osk_text[i] == 0) if (i < OutputInfo->numCharsResultString)
{ {
if (osk->osk_text[i] == 0)
{
do_copy = false;
}
OutputInfo->pResultString[i] = osk->osk_text[i];
}
else
{
OutputInfo->pResultString[i] = 0;
do_copy = false; do_copy = false;
} }
OutputInfo->pResultString[i] = osk->osk_text[i];
} }
} }