| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
| |
Just as %lc and %ls, this is only enabled on ELIX_LEVEL >= 2.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* vfscanf: per POSIX, if the target type is wchar_t, the width is
counted in (multibyte) characters, not in bytes.
* vfscanf: Handle UTF-8 multibyte sequences converted to surrogate
pairs on UTF-16 systems.
* vfwscanf: Don't count high surrogates in input against field width
counting. Per POSIX, input is
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The width value keeps the maximum field width. This is the maximum
field width of the *input*. It's *never* to be used in conjunction
with the number of bytes or characters written to the output argument.
However, especially in vfwscanf, the code is partially taken from
NetBSD which erroneously subtracts the number of multibyte chars
written to the argument from the width variable, thus potentially
subtracting up to MB_CUR_MAX from width for a single character in
the input stream.
To make matters worse, the previous patch adding %m added basically
the same mistake for 'c' type input.
Fix it.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
| |
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* The new code is guarded with _WANT_IO_POSIX_EXTENSIONS, but
this is automatically enabled with _WANT_IO_C99_FORMATS for now.
* vfscanf neglects to implement %l[, so %ml[ is not implemented yet
either.
* Sidenote: vfwscanf doesn't allow ranges in %[ yet. Strictly this
is allowed per POSIX, but it differes from vfscanf as well as from
glibc.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
| |
* change memcpy to internal _memcpy not setting the return value in %rax
* implement all memcpy-like functions as caller to _memcpy, setting %rax
to correct return value beforehand. This is possible because _memcpy
does not use %rax at all
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
POSIX requires that directive characters appear in a certain sequence:
1. '%' or '%<n>$'
2. optional '*'
3. optional field width digits
4. optional 'm' (not yet implemented)
5. optional length modifier ('l', 'L', 'll', 'h', 'hh', 'j', 't', 'z')
6. conversion specifier ('d', 's', etc)
Add a few basic validity checks to that effect, otherwise reject
directive as match failure.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
|
|
| |
Declare semaphore try wait and post binary functions.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
|
|
|
|
|
| |
Declare timed wait by ticks functions.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
|
|
|
|
|
| |
Add inline functions to set/get the name.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|