mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-01-07 12:30:32 +00:00
Initialize strtok_r's saveptr to NULL
Building gdb with --enable-build-with-cxx=no trips on a warning: ../../binutils-gdb/gdb/rust-lang.c:173:15: error: saveptr may be used uninitialized in this function [-Werror=maybe-uninitialized] ret.name = concat (TYPE_NAME (type), "::", token, (char *) NULL); The problem is that gcc doesn't understand that "tail" can never be NULL in the call to strtok_r: name = xstrdup (TYPE_FIELD_NAME (type, 0)); cleanup = make_cleanup (xfree, name); tail = name + strlen (RUST_ENUM_PREFIX); ... for (token = strtok_r (tail, "$", &saveptr); Fix this by always initializing saveptr. 2016-06-29 Manish Goregaokar <manish@mozilla.com> gdb/ChangeLog: * rust-lang.c (rust_get_disr_info): Initialize saveptr to NULL.
This commit is contained in:
parent
28244707d9
commit
9bf74fb27d
@ -1,5 +1,10 @@
|
||||
2016-06-29 Manish Goregaokar <manish@mozilla.com>
|
||||
|
||||
gdb/ChangeLog:
|
||||
* rust-lang.c (rust_get_disr_info): Initialize saveptr to NULL.
|
||||
|
||||
2016-06-29 Manish Goregaokar <manish@mozilla.com>
|
||||
|
||||
gdb/ChangeLog:
|
||||
* rust-lang.c (rust_get_disr_info): Use strtok_r instead of strsep.
|
||||
|
||||
|
@ -121,7 +121,7 @@ rust_get_disr_info (struct type *type, const gdb_byte *valaddr,
|
||||
if (strncmp (TYPE_FIELD_NAME (type, 0), RUST_ENUM_PREFIX,
|
||||
strlen (RUST_ENUM_PREFIX)) == 0)
|
||||
{
|
||||
char *tail, *token, *name, *saveptr;
|
||||
char *tail, *token, *name, *saveptr = NULL;
|
||||
unsigned long fieldno;
|
||||
struct type *member_type;
|
||||
LONGEST value;
|
||||
|
Loading…
Reference in New Issue
Block a user