2005-02-08 Antony King <antony.king@st.com>
* arm/syscalls.c: Change CHECK_INIT to pass reentrant struct instead of file pointer.
This commit is contained in:
parent
01d9b1612c
commit
1d7dd82d69
@ -1,3 +1,8 @@
|
||||
2005-02-08 Antony King <antony.king@st.com>
|
||||
|
||||
* arm/syscalls.c: Change CHECK_INIT to pass reentrant struct
|
||||
instead of file pointer.
|
||||
|
||||
2005-02-01 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
* cris/Makefile.in (ALL_INSTALL_FILES): New macro.
|
||||
|
@ -55,20 +55,17 @@ register char * stack_ptr asm ("sp");
|
||||
|
||||
/* following is copied from libc/stdio/local.h to check std streams */
|
||||
extern void _EXFUN(__sinit,(struct _reent *));
|
||||
#define CHECK_INIT(fp) \
|
||||
do \
|
||||
{ \
|
||||
if ((fp)->_data == 0) \
|
||||
(fp)->_data = _REENT; \
|
||||
if (!(fp)->_data->__sdidinit) \
|
||||
__sinit ((fp)->_data); \
|
||||
} \
|
||||
#define CHECK_INIT(ptr) \
|
||||
do \
|
||||
{ \
|
||||
if ((ptr) && !(ptr)->__sdidinit) \
|
||||
__sinit (ptr); \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
/* Adjust our internal handles to stay away from std* handles. */
|
||||
#define FILE_HANDLE_OFFSET (0x20)
|
||||
|
||||
static int std_files_checked;
|
||||
static int monitor_stdin;
|
||||
static int monitor_stdout;
|
||||
static int monitor_stderr;
|
||||
@ -119,13 +116,8 @@ do_AngelSWI (int reason, void * arg)
|
||||
static int
|
||||
remap_handle (int fh)
|
||||
{
|
||||
if (!std_files_checked)
|
||||
{
|
||||
CHECK_INIT(stdin);
|
||||
CHECK_INIT(stdout);
|
||||
CHECK_INIT(stderr);
|
||||
std_files_checked = 1;
|
||||
}
|
||||
CHECK_INIT(_REENT);
|
||||
|
||||
if (fh == STDIN_FILENO)
|
||||
return monitor_stdin;
|
||||
if (fh == STDOUT_FILENO)
|
||||
|
Loading…
Reference in New Issue
Block a user