/* Set these last since __bufgetc initialization depends on
* __user_locking and only gets set if user locking is on. */
- f.__bufstart =
+ f.__bufstart =
f.__bufpos = (unsigned char *) ((void *) sp);
f.__bufread =
f.__bufend = f.__bufstart + strlen(sp);
FLAG_THOUSANDS = 0x20,
FLAG_I18N = 0x40, /* only works for d, i, u */
FLAG_MALLOC = 0x80, /* only works for s, S, and [ (and l[)*/
-};
+};
#define SPEC_RANGES { CONV_n, CONV_p, CONV_i, CONV_A, \
__set_errno(EILSEQ); /* In case of incomplete conversion. */
sc->mb_fail = 1;
}
-
+
SUCCESS:
sc->width = width; /* Restore width. */
if (psfs.conv_num == CONV_percent) {
goto MATCH_CHAR;
- }
+ }
if (psfs.conv_num == CONV_n) {
#ifdef __UCLIBC_MJN3_ONLY__
{
b = (psfs.store ? ((unsigned char *) psfs.cur_ptr) : buf);
fail = 1;
-
if (psfs.conv_num == CONV_c) {
if (sc.width == INT_MAX) {
if (*++fmt == '^') {
++fmt;
invert = 1;
- }
+ }
memset(scanset, invert, sizeof(scanset));
invert = 1-invert;
wb = (psfs.store ? ((wchar_t *) psfs.cur_ptr) : wbuf);
fail = 1;
-
+
if (psfs.conv_num == CONV_C) {
if (sc.width == INT_MAX) {
sc.width = 1;
unsigned char usflag, base;
unsigned char nonzero = 0;
unsigned char seendigit = 0;
-
#ifdef __UCLIBC_MJN3_ONLY__
#warning CONSIDER: What should be returned for an invalid conversion specifier?
assert(seendigit);
seendigit = 0;
nonzero = 0;
-
+
if (sc->cc == '0') {
seendigit = 1;
*b++ = '0';
}
__scan_getc(sc);
}
-
+
if (!seendigit) { /* No digits. Unrecoverable. */
goto DONE_DO_UNGET;
}