aboutsummaryrefslogtreecommitdiff
path: root/gdb/ada-lang.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/ada-lang.c')
-rw-r--r--gdb/ada-lang.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 95ceb10..aef2b1d 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -6685,8 +6685,10 @@ ada_variant_discrim_name (struct type *type0)
if (name == NULL || name[0] == '\000')
return "";
- for (discrim_end = name + strlen (name) - 6; discrim_end != name;
- discrim_end -= 1)
+ size_t len = strlen (name);
+ if (len < 6)
+ return "";
+ for (discrim_end = name + len - 6; discrim_end != name; discrim_end -= 1)
{
if (startswith (discrim_end, "___XVN"))
break;