mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-25 13:09:48 +00:00
* remote.c (remote_get_thread_local_address): Throw a more
meaningful exception when remote target doesn't have support for the qGetTLSAddr packet.
This commit is contained in:
parent
3869131802
commit
571dd61707
@ -1,3 +1,9 @@
|
||||
2005-04-15 Kevin Buettner <kevinb@redhat.com>
|
||||
|
||||
* remote.c (remote_get_thread_local_address): Throw a more
|
||||
meaningful exception when remote target doesn't have support
|
||||
for the qGetTLSAddr packet.
|
||||
|
||||
2005-04-15 Kevin Buettner <kevinb@redhat.com>
|
||||
|
||||
* remote.c (remote_protocol_qGetTLSAddr): New static global variable.
|
||||
|
11
gdb/remote.c
11
gdb/remote.c
@ -5344,6 +5344,7 @@ remote_get_thread_local_address (ptid_t ptid, CORE_ADDR lm, CORE_ADDR offset)
|
||||
struct remote_state *rs = get_remote_state ();
|
||||
char *buf = alloca (rs->remote_packet_size);
|
||||
char *p = buf;
|
||||
enum packet_result result;
|
||||
|
||||
strcpy (p, "qGetTLSAddr:");
|
||||
p += strlen (p);
|
||||
@ -5356,13 +5357,21 @@ remote_get_thread_local_address (ptid_t ptid, CORE_ADDR lm, CORE_ADDR offset)
|
||||
|
||||
putpkt (buf);
|
||||
getpkt (buf, rs->remote_packet_size, 0);
|
||||
if (packet_ok (buf, &remote_protocol_qGetTLSAddr) == PACKET_OK)
|
||||
result = packet_ok (buf, &remote_protocol_qGetTLSAddr);
|
||||
if (result == PACKET_OK)
|
||||
{
|
||||
ULONGEST result;
|
||||
|
||||
unpack_varlen_hex (buf, &result);
|
||||
return result;
|
||||
}
|
||||
else if (result == PACKET_UNKNOWN)
|
||||
{
|
||||
struct exception e
|
||||
= { RETURN_ERROR, TLS_GENERIC_ERROR,
|
||||
"Remote target doesn't support qGetTLSAddr packet" };
|
||||
throw_exception (e);
|
||||
}
|
||||
else
|
||||
{
|
||||
struct exception e
|
||||
|
Loading…
Reference in New Issue
Block a user