]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
[_USE_IN_LIBIO] (encode_error): Free cancelation handler.
authorUlrich Drepper <drepper@redhat.com>
Tue, 14 Jul 1998 19:44:06 +0000 (19:44 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 14 Jul 1998 19:44:06 +0000 (19:44 +0000)
(conv_error): Likewise.
(input_error): Likewise.
(memory_error): Likewise.

stdio-common/vfscanf.c

index c02b4f4c4ae05af64eb0b62e95da81ecaf1e9894..39e8f3c90118404ef45a585e172b4e6a569fbb6c 100644 (file)
 # define encode_error()        do {                                                  \
                          if (errp != NULL) *errp |= 4;                       \
                          _IO_funlockfile (s);                                \
+                         __libc_cleanup_end (0);                             \
                          __set_errno (EILSEQ);                               \
                          return done;                                        \
                        } while (0)
 # define conv_error()  do {                                                  \
                          if (errp != NULL) *errp |= 2;                       \
                          _IO_funlockfile (s);                                \
+                         __libc_cleanup_end (0);                             \
                          return done;                                        \
                        } while (0)
 # define input_error() do {                                                  \
                          _IO_funlockfile (s);                                \
+                         __libc_cleanup_end (0);                             \
                          if (errp != NULL) *errp |= 1;                       \
                          return done ?: EOF;                                 \
                        } while (0)
 # define memory_error()        do {                                                  \
                          _IO_funlockfile (s);                                \
+                         __libc_cleanup_end (0);                             \
                          __set_errno (ENOMEM);                               \
                          return EOF;                                         \
                        } while (0)