Fix inverted logic bug

During reviews, I changed the success/failure variables from int to bool, but
missed updating the code in a couple spots.  Given the logic inversion, the
gdbserver code fails instead of succeeding.

Fixed with the following patch. Seems fairly obvious, so I'll push it soon.

gdbserver/ChangeLog:

2021-03-30  Luis Machado  <luis.machado@linaro.org>

	* server.cc (handle_general_set, handle_query): Update variable
	to bool and fix verification logic.
This commit is contained in:
Luis Machado 2021-03-29 13:48:43 -03:00
parent 5e0423804a
commit 782c1ab836
2 changed files with 10 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2021-03-30 Luis Machado <luis.machado@linaro.org>
* server.cc (handle_general_set, handle_query): Update variable
to bool and fix verification logic.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* Makefile.in (SFILES): Add /../gdb/nat/aarch64-mte-linux-ptrace.c.

View File

@ -982,13 +982,13 @@ handle_general_set (char *own_buf)
require_running_or_return (own_buf);
int ret = parse_store_memtags_request (own_buf, &addr, &len, tags,
bool ret = parse_store_memtags_request (own_buf, &addr, &len, tags,
&type);
if (ret == 0)
if (ret)
ret = the_target->store_memtags (addr, len, tags, type);
if (ret)
if (!ret)
write_enn (own_buf);
else
write_ok (own_buf);
@ -2730,12 +2730,12 @@ handle_query (char *own_buf, int packet_len, int *new_packet_len_p)
parse_fetch_memtags_request (own_buf, &addr, &len, &type);
int ret = the_target->fetch_memtags (addr, len, tags, type);
bool ret = the_target->fetch_memtags (addr, len, tags, type);
if (ret)
ret = create_fetch_memtags_reply (own_buf, tags);
if (ret)
if (!ret)
write_enn (own_buf);
*new_packet_len_p = strlen (own_buf);