Imported Upstream version 5.2.0.175

Former-commit-id: bb0468d0f257ff100aa895eb5fe583fb5dfbf900
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2017-06-07 13:16:24 +00:00
parent 4bdbaf4a88
commit 966bba02bb
8776 changed files with 346420 additions and 149650 deletions

View File

@@ -175,6 +175,11 @@ discard_buffer (int fd, gboolean input)
gint32
get_bytes_in_buffer (int fd, gboolean input)
{
#if defined(__HAIKU__)
/* FIXME: Haiku doesn't support TIOCOUTQ nor FIONREAD on fds */
return -1;
#define TIOCOUTQ 0
#endif
gint32 retval;
if (ioctl (fd, input ? FIONREAD : TIOCOUTQ, &retval) == -1) {

View File

@@ -88,17 +88,25 @@ Mono_Posix_Syscall_msync (void *start, mph_size_t len, int flags)
int
Mono_Posix_Syscall_mlock (void *start, mph_size_t len)
{
#if !defined(HAVE_MINCORE)
return ENOSYS;
#else
mph_return_if_size_t_overflow (len);
return mlock (start, (size_t) len);
#endif
}
int
Mono_Posix_Syscall_munlock (void *start, mph_size_t len)
{
#if defined(__HAIKU__)
return ENOSYS;
#else
mph_return_if_size_t_overflow (len);
return munlock (start, (size_t) len);
#endif
}
#ifdef HAVE_MREMAP
@@ -129,9 +137,13 @@ Mono_Posix_Syscall_mremap (void *old_address, mph_size_t old_size,
int
Mono_Posix_Syscall_mincore (void *start, mph_size_t length, unsigned char *vec)
{
#if defined(__HAIKU__)
return ENOSYS;
#else
mph_return_if_size_t_overflow (length);
return mincore (start, (size_t) length, (void*)vec);
#endif
}
#ifdef HAVE_POSIX_MADVISE

View File

@@ -47,6 +47,11 @@ Mono_Posix_Syscall_settimeofday (
struct Mono_Posix_Timeval *tv,
struct Mono_Posix_Timezone *tz)
{
#if defined(__HAIKU__)
/* FIXME: Haiku doesn't support this either, consider
using set_real_time_clock instead? */
return -1;
#else
struct timeval _tv = {0};
struct timeval *ptv = NULL;
struct timezone _tz = {0};
@@ -67,6 +72,7 @@ Mono_Posix_Syscall_settimeofday (
r = settimeofday (ptv, ptz);
return r;
#endif
}
static inline struct timeval*