]> git.saurik.com Git - apple/libc.git/blame - stdio/FreeBSD/fscanf.c.patch
Libc-763.13.tar.gz
[apple/libc.git] / stdio / FreeBSD / fscanf.c.patch
CommitLineData
1f2f436a
A
1--- fscanf.c.bsdnew 2009-11-11 13:33:09.000000000 -0800
2+++ fscanf.c 2009-11-11 13:33:09.000000000 -0800
3@@ -36,6 +36,8 @@ static char sccsid[] = "@(#)fscanf.c 8.1
3d9156a7 4 #include <sys/cdefs.h>
1f2f436a 5 __FBSDID("$FreeBSD: src/lib/libc/stdio/fscanf.c,v 1.13 2007/01/09 00:28:06 imp Exp $");
3d9156a7
A
6
7+#include "xlocale_private.h"
8+
9 #include "namespace.h"
10 #include <stdio.h>
11 #include <stdarg.h>
1f2f436a 12@@ -51,7 +53,22 @@ fscanf(FILE * __restrict fp, char const
3d9156a7
A
13
14 va_start(ap, fmt);
15 FLOCKFILE(fp);
16- ret = __svfscanf(fp, fmt, ap);
17+ ret = __svfscanf_l(fp, __current_locale(), fmt, ap);
18+ va_end(ap);
19+ FUNLOCKFILE(fp);
20+ return (ret);
21+}
22+
23+int
24+fscanf_l(FILE * __restrict fp, locale_t loc, char const * __restrict fmt, ...)
25+{
26+ int ret;
27+ va_list ap;
28+
29+ NORMALIZE_LOCALE(loc);
30+ va_start(ap, fmt);
31+ FLOCKFILE(fp);
32+ ret = __svfscanf_l(fp, loc, fmt, ap);
33 va_end(ap);
34 FUNLOCKFILE(fp);
35 return (ret);