Home | Info | Community | Development | myReactOS | Contact Us
[static]
Definition at line 303 of file string.c.
Referenced by vsnprintfW().
{ size_t count = 0; int i, left_align = 0, width = 0, max = 0; assert( *format == '%' ); format++; /* skip '%' */ while (*format == '0' || *format == '+' || *format == '-' || *format == ' ' || *format == '#') { if (*format == '-') left_align = 1; format++; } while (isdigit(*format)) width = width * 10 + *format++ - '0'; if (str_len == -1) str_len = strlenW( str ); if (*format == '.') { format++; while (isdigit(*format)) max = max * 10 + *format++ - '0'; if (max > str_len) max = str_len; } else max = str_len; if (*format == 'h' || *format == 'l') format++; assert( *format == 's' ); if (!left_align && width > max) { if ((count += width - max) >= len) return -1; for (i = 0; i < width - max; i++) *buffer++ = ' '; } if ((count += max) >= len) return -1; memcpy( buffer, str, max * sizeof(WCHAR) ); buffer += max; if (left_align && width > max) { if ((count += width - max) >= len) return -1; for (i = 0; i < width - max; i++) *buffer++ = ' '; } return count; }