diff options
author | Anders Broman <anders.broman@ericsson.com> | 2010-02-23 19:28:38 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2010-02-23 19:28:38 +0000 |
commit | 4e66c899d131f58d04563f197a3d5aa2bc3ad760 (patch) | |
tree | e548d193b8418f9e45b8b4c4523c1b702068062f /epan/ftypes | |
parent | 1d5c24d0682732d796def7be6506019c09936b38 (diff) | |
download | wireshark-4e66c899d131f58d04563f197a3d5aa2bc3ad760.tar.gz |
From Jakub Zawadzki:
Optimizations.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4303
svn path=/trunk/; revision=31967
Diffstat (limited to 'epan/ftypes')
-rw-r--r-- | epan/ftypes/ftype-integer.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/epan/ftypes/ftype-integer.c b/epan/ftypes/ftype-integer.c index a45169e10f..87d5888c65 100644 --- a/epan/ftypes/ftype-integer.c +++ b/epan/ftypes/ftype-integer.c @@ -115,7 +115,15 @@ integer_repr_len(fvalue_t *fv _U_, ftrepr_t rtype _U_) static void integer_to_repr(fvalue_t *fv, ftrepr_t rtype _U_, char *buf) { - sprintf(buf, "%d", fv->value.sinteger); + guint32 val; + + if (fv->value.sinteger < 0) { + *buf++ = '-'; + val = -fv->value.sinteger; + } else + val = fv->value.sinteger; + + guint32_to_str_buf(val, buf, 11); } static int @@ -127,7 +135,7 @@ uinteger_repr_len(fvalue_t *fv _U_, ftrepr_t rtype _U_) static void uinteger_to_repr(fvalue_t *fv, ftrepr_t rtype _U_, char *buf) { - sprintf(buf, "%u", fv->value.uinteger); + guint32_to_str_buf(fv->value.uinteger, buf, 11); } static gboolean @@ -403,7 +411,8 @@ boolean_repr_len(fvalue_t *fv _U_, ftrepr_t rtype _U_) static void boolean_to_repr(fvalue_t *fv, ftrepr_t rtype _U_, char *buf) { - sprintf(buf, "%s", fv->value.uinteger ? "1" : "0"); + *buf++ = (fv->value.uinteger) ? '1' : '0'; + *buf = '\0'; } /* Checks for equality with zero or non-zero */ |