swkbd: Use appletHolderPresetLibraryAppletGpuTimeSliceZero on [10.0.0+] in _swkbdInlineLaunch. In _swkbdInlineLaunch, use appletHolderClose if needed when errors occur.

This commit is contained in:
yellows8 2020-04-18 13:25:21 -04:00
parent 1925e32c6d
commit 0de0dfdd8d
No known key found for this signature in database
GPG Key ID: 0AF90DA3F1E60E43

View File

@ -493,14 +493,19 @@ static Result _swkbdInlineLaunch(SwkbdInline* s, SwkbdInitializeArg *initArg) {
rc = appletCreateLibraryApplet(&s->holder, AppletId_swkbd, s->calcArg.initArg.mode!=SwkbdInlineMode_UserDisplay ? LibAppletMode_Background : LibAppletMode_BackgroundIndirect);
if (R_FAILED(rc)) return rc;
if (hosversionAtLeast(10,0,0))
rc = appletHolderPresetLibraryAppletGpuTimeSliceZero(&s->holder);
LibAppletArgs commonargs;
libappletArgsCreate(&commonargs, s->version);
rc = libappletArgsPush(&commonargs, &s->holder);
if (R_SUCCEEDED(rc)) rc = libappletArgsPush(&commonargs, &s->holder);
if (R_SUCCEEDED(rc)) rc = libappletPushInData(&s->holder, &s->calcArg.initArg, sizeof(s->calcArg.initArg));
if (R_SUCCEEDED(rc)) rc = appletHolderStart(&s->holder);
if (R_FAILED(rc)) appletHolderClose(&s->holder);
return rc;
}