Browse Source

software_keyboard: Return correct result code on user cancel operation

pull/15/merge
Zach Hilman 7 years ago
parent
commit
d68795c665
  1. 1
      src/core/hle/service/am/applets/applets.cpp
  2. 4
      src/core/hle/service/am/applets/software_keyboard.cpp
  3. 1
      src/core/hle/service/am/applets/software_keyboard.h

1
src/core/hle/service/am/applets/applets.cpp

@ -5,7 +5,6 @@
#include <cstring> #include <cstring>
#include "common/assert.h" #include "common/assert.h"
#include "core/core.h" #include "core/core.h"
#include "core/frontend/applets/software_keyboard.h"
#include "core/hle/kernel/event.h" #include "core/hle/kernel/event.h"
#include "core/hle/kernel/server_port.h" #include "core/hle/kernel/server_port.h"
#include "core/hle/service/am/am.h" #include "core/hle/service/am/am.h"

4
src/core/hle/service/am/applets/software_keyboard.cpp

@ -74,7 +74,7 @@ bool SoftwareKeyboard::TransactionComplete() const {
} }
ResultCode SoftwareKeyboard::GetStatus() const { ResultCode SoftwareKeyboard::GetStatus() const {
return status;
return RESULT_SUCCESS;
} }
void SoftwareKeyboard::ExecuteInteractive() { void SoftwareKeyboard::ExecuteInteractive() {
@ -118,7 +118,6 @@ void SoftwareKeyboard::WriteText(std::optional<std::u16string> text) {
if (text.has_value()) { if (text.has_value()) {
std::vector<u8> output_sub(SWKBD_OUTPUT_BUFFER_SIZE); std::vector<u8> output_sub(SWKBD_OUTPUT_BUFFER_SIZE);
status = RESULT_SUCCESS;
if (config.utf_8) { if (config.utf_8) {
const u64 size = text->size() + 8; const u64 size = text->size() + 8;
@ -154,7 +153,6 @@ void SoftwareKeyboard::WriteText(std::optional<std::u16string> text) {
broker->SignalStateChanged(); broker->SignalStateChanged();
} else { } else {
status = ResultCode(-1);
output_main[0] = 1; output_main[0] = 1;
complete = true; complete = true;
broker->PushNormalDataFromApplet(IStorage{output_main}); broker->PushNormalDataFromApplet(IStorage{output_main});

1
src/core/hle/service/am/applets/software_keyboard.h

@ -64,7 +64,6 @@ private:
std::u16string initial_text; std::u16string initial_text;
bool complete = false; bool complete = false;
std::vector<u8> final_data; std::vector<u8> final_data;
ResultCode status = ResultCode(-1);
}; };
} // namespace Service::AM::Applets } // namespace Service::AM::Applets
Loading…
Cancel
Save