This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
On Jul 1 14:58, Sebastian Huber wrote:
>
>
> On 01/07/15 14:52, Sebastian Huber wrote:
> >>
> >>Btw., don't we have the same problem in libc/stdio/gets.c as well?
> >
> >Probably yes. It seems a _REENT_SMALL_CHECK_INIT (ptr) is missing as well?
> >I try to add this to the second version.
>
> This _gets_r() looks quite dubious:
>
> char *
> _DEFUN(_gets_r, (ptr, buf),
> struct _reent *ptr _AND
> char *buf)
> {
> register int c;
> register char *s = buf;
>
> _newlib_flockfile_start (stdin);
> while ((c = __sgetc_r (ptr, stdin)) != '\n')
> if (c == EOF)
> if (s == buf)
> {
> _newlib_flockfile_exit (stdin);
> return NULL;
> }
> else
> break;
> else
> *s++ = c;
> *s = 0;
> _newlib_flockfile_end (stdin);
> return buf;
> }
>
> We have:
>
> #define stdin (_REENT->_stdin)
>
> so we don't use the ptr->_stdin? Is this intentional?
I don't know. It looks like an oversight, but I'm not sure.
Jeff, any idea?
Corinna
--
Corinna Vinschen
Cygwin Maintainer
Red Hat
Attachment:
pgpOnwj8tL9KU.pgp
Description: PGP signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |