Correctly handle phex(*,0) and phex_nz(*,0).

This commit is contained in:
Andrew Cagney
2001-11-15 18:35:05 +00:00
parent faf833caca
commit 45a1e86678
2 changed files with 6 additions and 2 deletions

View File

@@ -2,6 +2,7 @@
* utils.c (phex_nz): For default case, set str to phex_nz return * utils.c (phex_nz): For default case, set str to phex_nz return
value. value.
(phex): Ditto.
2001-11-15 Andrew Cagney <ac131313@redhat.com> 2001-11-15 Andrew Cagney <ac131313@redhat.com>

View File

@@ -2418,22 +2418,25 @@ static int thirty_two = 32;
char * char *
phex (ULONGEST l, int sizeof_l) phex (ULONGEST l, int sizeof_l)
{ {
char *str = get_cell (); char *str;
switch (sizeof_l) switch (sizeof_l)
{ {
case 8: case 8:
str = get_cell ();
sprintf (str, "%08lx%08lx", sprintf (str, "%08lx%08lx",
(unsigned long) (l >> thirty_two), (unsigned long) (l >> thirty_two),
(unsigned long) (l & 0xffffffff)); (unsigned long) (l & 0xffffffff));
break; break;
case 4: case 4:
str = get_cell ();
sprintf (str, "%08lx", (unsigned long) l); sprintf (str, "%08lx", (unsigned long) l);
break; break;
case 2: case 2:
str = get_cell ();
sprintf (str, "%04x", (unsigned short) (l & 0xffff)); sprintf (str, "%04x", (unsigned short) (l & 0xffff));
break; break;
default: default:
phex (l, sizeof (l)); str = phex (l, sizeof (l));
break; break;
} }
return str; return str;