Subject: setlocale() failure mode
To: None <jdolecek@netbsd.org>
From: None <itojun@iijlab.net>
List: source-changes
Date: 12/23/2000 07:19:44
>Module Name:	basesrc
>Committed By:	jdolecek
>Date:		Fri Dec 22 16:50:08 UTC 2000
>
>Modified Files:
>	basesrc/lib/libc/locale: setlocale.c
>
>Log Message:
>previous change was not complete enough, so finish and make more correct:
>for LC_ALL, return success if at least on of categories was loaded
>successfully, error if no category was loaded; in the latter case, we don't
>need to back off locale changes, since none happened

	no, the change is incorrect. try the following and "C" gets returned
	(it has to return NULL, according to ISO/IEC 9899:1999(E).

itojun



#include <wchar.h>
#include <locale.h>

main()
{
	printf("%s\n", setlocale(LC_CTYPE, "junk"));
}