[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[formatting i18n 11/14] data-out: Reorganize output_Z() to be more easil
From: |
Ben Pfaff |
Subject: |
[formatting i18n 11/14] data-out: Reorganize output_Z() to be more easily understood. |
Date: |
Sat, 19 Feb 2011 17:42:23 -0800 |
It took me a minute to figure out what was going on here, so this commit
slightly reorganizes it.
---
src/data/data-out.c | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/data/data-out.c b/src/data/data-out.c
index bb77437..1ed83bc 100644
--- a/src/data/data-out.c
+++ b/src/data/data-out.c
@@ -215,11 +215,9 @@ output_Z (const union value *input, const struct fmt_spec
*format,
char buf[128];
if (input->f == SYSMIS)
output_missing (format, output);
- else if (fabs (number) >= power10 (format->w)
- || sprintf (buf, "%0*.0f", format->w,
- fabs (round (number))) != format->w)
- output_overflow (format, output);
- else
+ else if (fabs (number) < power10 (format->w)
+ && sprintf (buf, "%0*.0f", format->w,
+ fabs (round (number))) == format->w)
{
if (number < 0 && strspn (buf, "0") < format->w)
{
@@ -229,6 +227,8 @@ output_Z (const union value *input, const struct fmt_spec
*format,
memcpy (output, buf, format->w);
output[format->w] = '\0';
}
+ else
+ output_overflow (format, output);
}
/* Outputs P format. */
--
1.7.2.3
- [formatting i18n 00/14] Fix i18n of formatted data, Ben Pfaff, 2011/02/19
- [formatting i18n 03/14] PRINT: Use UTF-8 encoding for output to the output subsystem., Ben Pfaff, 2011/02/19
- [formatting i18n 01/14] Use new Gnulib function dtoastr() to format short, accurate real numbers., Ben Pfaff, 2011/02/19
- [formatting i18n 04/14] i18n: New function recode_byte()., Ben Pfaff, 2011/02/19
- [formatting i18n 10/14] format: Count prefix and suffix width in terms of display columns., Ben Pfaff, 2011/02/19
- [formatting i18n 08/14] data-out: Make each converter responsible for storing null terminator., Ben Pfaff, 2011/02/19
- [formatting i18n 12/14] pool: Support NULL pool argument to pool_alloc_unaligned()., Ben Pfaff, 2011/02/19
- [formatting i18n 14/14] data-out: Add test for non-ASCII custom currency formats., Ben Pfaff, 2011/02/19
- [formatting i18n 11/14] data-out: Reorganize output_Z() to be more easily understood.,
Ben Pfaff <=
- [formatting i18n 02/14] CROSSTABS: Eliminate redundant data copying., Ben Pfaff, 2011/02/19
- [formatting i18n 06/14] legacy-encoding: Remove., Ben Pfaff, 2011/02/19
- [formatting i18n 07/14] format: Increase abstraction of fmt_number_style., Ben Pfaff, 2011/02/19
- [formatting i18n 09/14] format: Create a new "struct fmt_affix" for prefix and suffix strings., Ben Pfaff, 2011/02/19
- [formatting i18n 05/14] i18n: Introduce C_ENCODING as replacement for LEGACY_NATIVE., Ben Pfaff, 2011/02/19
- [formatting i18n 13/14] data-out: Optimize and fix some bad assumptions., Ben Pfaff, 2011/02/19
- Re: [formatting i18n 00/14] Fix i18n of formatted data, Ben Pfaff, 2011/02/23