about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-01-02 00:59:51 +0000
committerUlrich Drepper <drepper@redhat.com>2004-01-02 00:59:51 +0000
commit3451e12ee3b1e47223e6c8a574df2b73a7361226 (patch)
treeadc3751de41b12619eacc8fa12ca108ff048da51
parent23d99b3c2f06c83df68e5d9edba138a4bda1f6da (diff)
downloadglibc-3451e12ee3b1e47223e6c8a574df2b73a7361226.tar.gz
glibc-3451e12ee3b1e47223e6c8a574df2b73a7361226.tar.xz
glibc-3451e12ee3b1e47223e6c8a574df2b73a7361226.zip
Update.
2004-01-01  Petter Reinholdtsen  <pere@hungry.com>

	* tst-fmon.data: Add simple test to check left justified currency
	values in the C locale.

	* tst-fmon.sh: Don't print every line.  The program already prints
	the failing ones.
-rw-r--r--localedata/ChangeLog8
-rw-r--r--localedata/tst-fmon.data4
-rwxr-xr-xlocaledata/tst-fmon.sh18
-rw-r--r--stdlib/strfmon.c4
4 files changed, 20 insertions, 14 deletions
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index c37ff7c1d3..27632ca6d3 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,5 +1,13 @@
+2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
+
+	* tst-fmon.data: Add simple test to check left justified currency
+	values in the C locale.
+
 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
 
+	* tst-fmon.sh: Don't print every line.  The program already prints
+	the failing ones.
+
 	* tst-fmon.c (main): Fix typo in message.
 
 2003-07-06  Petter Reinholdtsen  <pere@hungry.com>
diff --git a/localedata/tst-fmon.data b/localedata/tst-fmon.data
index d7bcb1793f..bbcd821213 100644
--- a/localedata/tst-fmon.data
+++ b/localedata/tst-fmon.data
@@ -44,6 +44,10 @@ C			%#9n	1.23		         1.23
 C			%#9n	-1.23		-        1.23
 C			%=*#9n	1.23		 ********1.23
 C			%=*#9n	-1.23		-********1.23
+C			%-14#5.4n	1.23	"     1.2300   "
+C			%-14#5.4n	-1.23	"-    1.2300   "
+C			%-14#5.4n	123.45	"   123.4500   "
+C			%-14#5.4n	123456	" 123456.0000  "
 #
 # check both the german locale and strfmon with that data
 #
diff --git a/localedata/tst-fmon.sh b/localedata/tst-fmon.sh
index 95dab36f74..d2bd608280 100755
--- a/localedata/tst-fmon.sh
+++ b/localedata/tst-fmon.sh
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Testing the implementation of strfmon(3).
-# Copyright (C) 1996, 1997, 1998, 2000, 2003 Free Software Foundation, Inc.
+# Copyright (C) 1996-1998, 2000, 2003, 2004 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 # Contributed by Jochen Hein <jochen.hein@delphi.central.de>, 1997.
 #
@@ -45,17 +45,11 @@ while IFS="	" read locale format value expect; do
     case "$locale" in '#'*) continue ;; esac
     if [ -n "$format" ]; then
 	expect=`echo "$expect" | sed 's/^\"\(.*\)\"$/\1/'`
-	if LOCPATH=${common_objpfx}localedata \
-	   GCONV_PATH=${common_objpfx}/iconvdata \
-	   ${run_program_prefix} ${common_objpfx}localedata/tst-fmon \
-	   "$locale" "$format" "$value" "$expect" ; then
-	    echo "Locale: \"${locale}\" Format: \"${format}\"" \
-		 "Value: \"${value}\" Expected: \"${expect}\"  passed"
-	else
-	    errcode=$?
-	    echo "Locale: \"${locale}\" Format: \"${format}\"" \
-		 "Value: \"${value}\" Expected: \"${expect}\"    failed"
-	fi
+	LOCPATH=${common_objpfx}localedata \
+	GCONV_PATH=${common_objpfx}/iconvdata \
+	${run_program_prefix} ${common_objpfx}localedata/tst-fmon \
+	"$locale" "$format" "$value" "$expect" ||
+	errcode=$?
     fi
 done < $datafile
 
diff --git a/stdlib/strfmon.c b/stdlib/strfmon.c
index 4f16316542..b17dc9823c 100644
--- a/stdlib/strfmon.c
+++ b/stdlib/strfmon.c
@@ -1,5 +1,5 @@
 /* Formatting a monetary value according to the current locale.
-   Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 1996-2001, 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>
    and Jochen Hein <Jochen.Hein@informatik.TU-Clausthal.de>, 1996.
@@ -570,7 +570,7 @@ __strfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format, ...)
       info.is_long = 0;
       info.alt = 0;
       info.space = 0;
-      info.left = left;
+      info.left = 0;
       info.showsign = 0;
       info.group = group;
       info.pad = pad;