|
|
00db10 |
Fix potential ABI change introduced by glibc-rh1398413.patch.
|
|
|
00db10 |
|
|
|
00db10 |
extern void _IO_str_init_static (struct _IO_strfile_ *, char *, int, char *)
|
|
|
00db10 |
__THROW;
|
|
|
00db10 |
extern void _IO_str_init_readonly (struct _IO_strfile_ *, const char *, int)
|
|
|
00db10 |
__THROW;
|
|
|
00db10 |
|
|
|
00db10 |
Upstream, this did not have any effect because the function definitions
|
|
|
00db10 |
were prototypes, so there is no upstream fix necessary.
|
|
|
00db10 |
|
|
|
00db10 |
But downstream, we have:
|
|
|
00db10 |
|
|
|
00db10 |
70 void
|
|
|
00db10 |
71 _IO_str_init_static (sf, ptr, size, pstart)
|
|
|
00db10 |
72 _IO_strfile *sf;
|
|
|
00db10 |
73 char *ptr;
|
|
|
00db10 |
74 int size;
|
|
|
00db10 |
75 char *pstart;
|
|
|
00db10 |
76 {
|
|
|
00db10 |
77 return _IO_str_init_static_internal (sf, ptr, size < 0 ? -1 : size, pstart);
|
|
|
00db10 |
78 }
|
|
|
00db10 |
79
|
|
|
00db10 |
80 void
|
|
|
00db10 |
81 _IO_str_init_readonly (sf, ptr, size)
|
|
|
00db10 |
82 _IO_strfile *sf;
|
|
|
00db10 |
83 const char *ptr;
|
|
|
00db10 |
84 int size;
|
|
|
00db10 |
85 {
|
|
|
00db10 |
86 _IO_str_init_static_internal (sf, (char *) ptr, size < 0 ? -1 : size, NULL);
|
|
|
00db10 |
87 sf->_sbf._f._IO_file_flags |= _IO_NO_WRITES;
|
|
|
00db10 |
88 }
|
|
|
00db10 |
|
|
|
00db10 |
This results in:
|
|
|
00db10 |
|
|
|
00db10 |
strops.c:71:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
|
|
|
00db10 |
strops.c:81:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
|
|
|
00db10 |
|
|
|
00db10 |
It is a potential ABI change, depending on the architecture. None of
|
|
|
00db10 |
the architectures in Red Hat Enterprise Linux appear to be affected,
|
|
|
00db10 |
though.
|
|
|
00db10 |
|
|
|
00db10 |
diff --git a/libio/strops.c b/libio/strops.c
|
|
|
00db10 |
index 7df842fa519e4a49..a5b76af963e77877 100644
|
|
|
00db10 |
--- a/libio/strops.c
|
|
|
00db10 |
+++ b/libio/strops.c
|
|
|
00db10 |
@@ -68,20 +68,13 @@ _IO_str_init_static_internal (sf, ptr, size, pstart)
|
|
|
00db10 |
}
|
|
|
00db10 |
|
|
|
00db10 |
void
|
|
|
00db10 |
-_IO_str_init_static (sf, ptr, size, pstart)
|
|
|
00db10 |
- _IO_strfile *sf;
|
|
|
00db10 |
- char *ptr;
|
|
|
00db10 |
- int size;
|
|
|
00db10 |
- char *pstart;
|
|
|
00db10 |
+_IO_str_init_static (_IO_strfile *sf, char *ptr, int size, char *pstart)
|
|
|
00db10 |
{
|
|
|
00db10 |
return _IO_str_init_static_internal (sf, ptr, size < 0 ? -1 : size, pstart);
|
|
|
00db10 |
}
|
|
|
00db10 |
|
|
|
00db10 |
void
|
|
|
00db10 |
-_IO_str_init_readonly (sf, ptr, size)
|
|
|
00db10 |
- _IO_strfile *sf;
|
|
|
00db10 |
- const char *ptr;
|
|
|
00db10 |
- int size;
|
|
|
00db10 |
+_IO_str_init_readonly (_IO_strfile *sf, const char *ptr, int size)
|
|
|
00db10 |
{
|
|
|
00db10 |
_IO_str_init_static_internal (sf, (char *) ptr, size < 0 ? -1 : size, NULL);
|
|
|
00db10 |
sf->_sbf._f._IO_file_flags |= _IO_NO_WRITES;
|