diff options
| author | Kris Kennaway <kris@FreeBSD.org> | 2001-07-16 04:04:22 +0000 |
|---|---|---|
| committer | Kris Kennaway <kris@FreeBSD.org> | 2001-07-16 04:04:22 +0000 |
| commit | 5e2aa25bcf2729c440ce21d7ce010d950614b57b (patch) | |
| tree | 509f74042984d95cd649abd4f7dcf0ccd00961ce /lib/libc | |
| parent | bcef131fb88b7ee2079da43497d1eb4aa239defe (diff) | |
Notes
Diffstat (limited to 'lib/libc')
| -rw-r--r-- | lib/libc/net/ns_addr.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/libc/net/ns_addr.c b/lib/libc/net/ns_addr.c index f26ed919df8b..75449ed98b94 100644 --- a/lib/libc/net/ns_addr.c +++ b/lib/libc/net/ns_addr.c @@ -187,19 +187,25 @@ Field(buf, out, len) bp = clen + buf - 3; hp = hb + i - 1; - while (hp >= hb) { + while (hp > hb) { if (base16) (void)sscanf(bp, "%3x", hp); else if (base10) (void)sscanf(bp, "%3d", hp); else (void)sscanf(bp, "%3o", hp); - if (hp > hb) { - bp[0] = 0; - hp--; - bp -= 3; - } + + bp[0] = 0; + hp--; + bp -= 3; } + if (base16) + (void)sscanf(buf, "%3x", hp); + else if (base10) + (void)sscanf(buf, "%3d", hp); + else + (void)sscanf(buf, "%3o", hp); + cvtbase((long)ibase, 256, hb, i, out, len); } |
