diff options
author | Archit Shah <ashah@redhat.com> | 2006-01-24 18:10:39 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2006-01-24 18:10:39 +0000 |
commit | 38fd6679a33ecd336bc21027821e4e0b9fb0363a (patch) | |
tree | 99f1f68a7dd57875c96e86aac01ebb29de93908d /libjava | |
parent | c41303c6819e0699b032922bd7a14ebfe3a45b14 (diff) | |
download | gcc-38fd6679a33ecd336bc21027821e4e0b9fb0363a.zip gcc-38fd6679a33ecd336bc21027821e4e0b9fb0363a.tar.gz gcc-38fd6679a33ecd336bc21027821e4e0b9fb0363a.tar.bz2 |
prims.cc (next_property_value): Never return NULL.
* prims.cc (next_property_value): Never return NULL.
(process_gcj_properties): Copy 'props' before using it.
Co-Authored-By: Tom Tromey <tromey@redhat.com>
From-SVN: r110177
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 6 | ||||
-rw-r--r-- | libjava/prims.cc | 15 |
2 files changed, 14 insertions, 7 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index d13425b..a2357c3 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2006-01-24 Archit Shah <ashah@redhat.com> + Tom Tromey <tromey@redhat.com> + + * prims.cc (next_property_value): Never return NULL. + (process_gcj_properties): Copy 'props' before using it. + 2006-01-23 Keith Seitz <keiths@redhat.com> * java/lang/Class.h (_Jv_FindInterpreterMethod): Add new declaration. diff --git a/libjava/prims.cc b/libjava/prims.cc index 09bca0b..a968a9b 100644 --- a/libjava/prims.cc +++ b/libjava/prims.cc @@ -857,10 +857,6 @@ next_property_value (char *s, size_t *length) while (isspace (*s)) s++; - // If we've reached the end, return NULL. - if (*s == 0) - return NULL; - // Determine the length of the property value. while (s[l] != 0 && ! isspace (s[l]) @@ -883,13 +879,18 @@ static void process_gcj_properties () { char *props = getenv("GCJ_PROPERTIES"); - char *p = props; - size_t length; - size_t property_count = 0; if (NULL == props) return; + // Later on we will write \0s into this string. It is simplest to + // just duplicate it here. + props = strdup (props); + + char *p = props; + size_t length; + size_t property_count = 0; + // Whip through props quickly in order to count the number of // property values. while (p && (p = next_property_key (p, &length))) |