From Adrien Destugues <pulkomandy@xxxxxxxxxxxxx>:
Adrien Destugues has uploaded this change for review. (
https://review.haiku-os.org/c/haiku/+/5385 ;)
Change subject: Interface kit: allow get_key_repeat_{rate,delay} to fail
......................................................................
Interface kit: allow get_key_repeat_{rate,delay} to fail
These functions should return an error if the input_server is not
running. They still give the default value in this case, but they now
return an error code.
Change-Id: I706cded7c780d913d4f36164596b2b7794db6f22
---
M src/kits/interface/InterfaceDefs.cpp
1 file changed, 14 insertions(+), 4 deletions(-)
git pull ssh://git.haiku-os.org:22/haiku refs/changes/85/5385/1
diff --git a/src/kits/interface/InterfaceDefs.cpp
b/src/kits/interface/InterfaceDefs.cpp
index 8882089..b76f864 100644
--- a/src/kits/interface/InterfaceDefs.cpp
+++ b/src/kits/interface/InterfaceDefs.cpp
@@ -716,10 +716,15 @@
BMessage command(IS_GET_KEY_REPEAT_RATE);
BMessage reply;
- _control_input_server_(&command, &reply);
+ status_t err = _control_input_server_(&command, &reply);
- if (reply.FindInt32("rate", rate) != B_OK)
+ if (err == B_OK)
+ err = reply.FindInt32("rate", rate);
+
+ if (err != B_OK) {
*rate = 250000;
+ return err;
+ }
return B_OK;
}
@@ -741,10 +746,15 @@
BMessage command(IS_GET_KEY_REPEAT_DELAY);
BMessage reply;
- _control_input_server_(&command, &reply);
+ status_t err = _control_input_server_(&command, &reply);
- if (reply.FindInt64("delay", delay) != B_OK)
+ if (err == B_OK)
+ err = reply.FindInt64("delay", delay);
+
+ if (err != B_OK) {
*delay = 200;
+ return err;
+ }
return B_OK;
}
--
To view, visit https://review.haiku-os.org/c/haiku/+/5385
To unsubscribe, or for help writing mail filters, visit
https://review.haiku-os.org/settings
Gerrit-Project: haiku
Gerrit-Branch: master
Gerrit-Change-Id: I706cded7c780d913d4f36164596b2b7794db6f22
Gerrit-Change-Number: 5385
Gerrit-PatchSet: 1
Gerrit-Owner: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx>
Gerrit-MessageType: newchange