apt: Remove aptLaunchLibraryApplet's return value/hidden aptMainLoop call
This commit is contained in:
parent
ac8656f8b2
commit
6ce690828c
@ -89,9 +89,8 @@ void miiSelectorInit(MiiSelectorConf *conf);
|
|||||||
* @brief Launch the Mii selector library applet
|
* @brief Launch the Mii selector library applet
|
||||||
*
|
*
|
||||||
* @param conf Configuration determining how the applet should behave
|
* @param conf Configuration determining how the applet should behave
|
||||||
* @param returnbuf Data returned by the applet
|
|
||||||
*/
|
*/
|
||||||
Result miiSelectorLaunch(const MiiSelectorConf *conf, MiiSelectorReturn* returnbuf);
|
void miiSelectorLaunch(const MiiSelectorConf *conf, MiiSelectorReturn* returnbuf);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Sets title of the Mii selector library applet
|
* @brief Sets title of the Mii selector library applet
|
||||||
|
@ -211,9 +211,8 @@ void aptSetMessageCallback(aptMessageCb callback, void* user);
|
|||||||
* @param buf Input/output buffer that contains launch parameters on entry and result data on exit.
|
* @param buf Input/output buffer that contains launch parameters on entry and result data on exit.
|
||||||
* @param bufsize Size of the buffer.
|
* @param bufsize Size of the buffer.
|
||||||
* @param handle Handle to pass to the library applet.
|
* @param handle Handle to pass to the library applet.
|
||||||
* @return Whether the application should continue running after the library applet launch.
|
|
||||||
*/
|
*/
|
||||||
bool aptLaunchLibraryApplet(NS_APPID appId, void* buf, size_t bufsize, Handle handle);
|
void aptLaunchLibraryApplet(NS_APPID appId, void* buf, size_t bufsize, Handle handle);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Sets the chainloader target.
|
* @brief Sets the chainloader target.
|
||||||
|
@ -18,7 +18,7 @@ void miiSelectorInit(MiiSelectorConf *conf)
|
|||||||
conf->mii_whitelist[i] = 1;
|
conf->mii_whitelist[i] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
Result miiSelectorLaunch(const MiiSelectorConf *conf, MiiSelectorReturn *returnbuf)
|
void miiSelectorLaunch(const MiiSelectorConf *conf, MiiSelectorReturn *returnbuf)
|
||||||
{
|
{
|
||||||
union {
|
union {
|
||||||
MiiSelectorConf config;
|
MiiSelectorConf config;
|
||||||
@ -28,11 +28,9 @@ Result miiSelectorLaunch(const MiiSelectorConf *conf, MiiSelectorReturn *returnb
|
|||||||
memcpy(&ctx.config, conf, sizeof(MiiSelectorConf));
|
memcpy(&ctx.config, conf, sizeof(MiiSelectorConf));
|
||||||
ctx.config.magic = MIISELECTOR_MAGIC;
|
ctx.config.magic = MIISELECTOR_MAGIC;
|
||||||
|
|
||||||
Result ret = aptLaunchLibraryApplet(APPID_APPLETED, &ctx.config, sizeof(MiiSelectorConf), 0);
|
aptLaunchLibraryApplet(APPID_APPLETED, &ctx.config, sizeof(MiiSelectorConf), 0);
|
||||||
if(R_SUCCEEDED(ret) && returnbuf)
|
if(returnbuf)
|
||||||
memcpy(returnbuf, &ctx.ret, sizeof(MiiSelectorReturn));
|
memcpy(returnbuf, &ctx.ret, sizeof(MiiSelectorReturn));
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void miiSelectorConvertToUTF8(char* out, const u16* in, int max)
|
static void miiSelectorConvertToUTF8(char* out, const u16* in, int max)
|
||||||
|
@ -238,20 +238,11 @@ SwkbdButton swkbdInputText(SwkbdState* swkbd, char* buf, size_t bufsize)
|
|||||||
// Launch swkbd
|
// Launch swkbd
|
||||||
memset(swkbd->reserved, 0, sizeof(swkbd->reserved));
|
memset(swkbd->reserved, 0, sizeof(swkbd->reserved));
|
||||||
if (extra.callback) aptSetMessageCallback(swkbdMessageCallback, &extra);
|
if (extra.callback) aptSetMessageCallback(swkbdMessageCallback, &extra);
|
||||||
bool ret = aptLaunchLibraryApplet(APPID_SOFTWARE_KEYBOARD, swkbd, sizeof(*swkbd), swkbdSharedMemHandle);
|
aptLaunchLibraryApplet(APPID_SOFTWARE_KEYBOARD, swkbd, sizeof(*swkbd), swkbdSharedMemHandle);
|
||||||
if (extra.callback) aptSetMessageCallback(NULL, NULL);
|
if (extra.callback) aptSetMessageCallback(NULL, NULL);
|
||||||
svcCloseHandle(swkbdSharedMemHandle);
|
svcCloseHandle(swkbdSharedMemHandle);
|
||||||
|
|
||||||
SwkbdButton button = SWKBD_BUTTON_NONE;
|
SwkbdButton button = SWKBD_BUTTON_NONE;
|
||||||
|
|
||||||
if (ret)
|
|
||||||
{
|
|
||||||
u16* text16 = (u16*)(swkbdSharedMem+swkbd->text_offset);
|
|
||||||
text16[swkbd->text_length] = 0;
|
|
||||||
swkbdConvertToUTF8(buf, text16, bufsize-1);
|
|
||||||
if (swkbd->save_state_flags & BIT(0)) memcpy(extra.status_data, swkbdSharedMem+swkbd->status_offset, sizeof(SwkbdStatusData));
|
|
||||||
if (swkbd->save_state_flags & BIT(1)) memcpy(extra.learning_data, swkbdSharedMem+swkbd->learning_offset, sizeof(SwkbdLearningData));
|
|
||||||
|
|
||||||
switch (swkbd->result)
|
switch (swkbd->result)
|
||||||
{
|
{
|
||||||
case SWKBD_D1_CLICK0:
|
case SWKBD_D1_CLICK0:
|
||||||
@ -269,7 +260,12 @@ SwkbdButton swkbdInputText(SwkbdState* swkbd, char* buf, size_t bufsize)
|
|||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
u16* text16 = (u16*)(swkbdSharedMem+swkbd->text_offset);
|
||||||
|
text16[swkbd->text_length] = 0;
|
||||||
|
swkbdConvertToUTF8(buf, text16, bufsize-1);
|
||||||
|
if (swkbd->save_state_flags & BIT(0)) memcpy(extra.status_data, swkbdSharedMem+swkbd->status_offset, sizeof(SwkbdStatusData));
|
||||||
|
if (swkbd->save_state_flags & BIT(1)) memcpy(extra.learning_data, swkbdSharedMem+swkbd->learning_offset, sizeof(SwkbdLearningData));
|
||||||
|
|
||||||
free(swkbdSharedMem);
|
free(swkbdSharedMem);
|
||||||
return button;
|
return button;
|
||||||
|
@ -730,7 +730,7 @@ void aptSetMessageCallback(aptMessageCb callback, void* user)
|
|||||||
aptMessageFuncData = user;
|
aptMessageFuncData = user;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool aptLaunchLibraryApplet(NS_APPID appId, void* buf, size_t bufsize, Handle handle)
|
void aptLaunchLibraryApplet(NS_APPID appId, void* buf, size_t bufsize, Handle handle)
|
||||||
{
|
{
|
||||||
bool sleep = aptIsSleepAllowed();
|
bool sleep = aptIsSleepAllowed();
|
||||||
|
|
||||||
@ -752,8 +752,6 @@ bool aptLaunchLibraryApplet(NS_APPID appId, void* buf, size_t bufsize, Handle ha
|
|||||||
aptWaitForWakeUp(TR_LIBAPPLET);
|
aptWaitForWakeUp(TR_LIBAPPLET);
|
||||||
memcpy(buf, aptParameters, bufsize);
|
memcpy(buf, aptParameters, bufsize);
|
||||||
aptSetSleepAllowed(sleep);
|
aptSetSleepAllowed(sleep);
|
||||||
|
|
||||||
return aptMainLoop();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Result APT_GetLockHandle(u16 flags, Handle* lockHandle)
|
Result APT_GetLockHandle(u16 flags, Handle* lockHandle)
|
||||||
|
Loading…
Reference in New Issue
Block a user