#define off_t guint64
#endif
-#ifdef __BIONIC__ /* Android */
-#undef lseek
-#define lseek lseek64
+#if defined(__BIONIC__) /* Android */
+#if defined(__ANDROID_API__) && __ANDROID_API__ >= 21
#undef fstat
#define fstat fstat64
-#undef off_t
-#define off_t guint64
+#endif
#endif
static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink",
#include "gstfdsrc.h"
#ifdef __BIONIC__ /* Android */
-#undef lseek
-#define lseek lseek64
+#if defined(__ANDROID_API__) && __ANDROID_API__ >= 21
#undef fstat
#define fstat fstat64
#endif
+#endif
static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
#include <unistd.h>
#endif
-#ifdef __BIONIC__ /* Android */
-#undef lseek
-#define lseek lseek64
-#undef off_t
-#define off_t guint64
-#endif
-
#include "gstelements_private.h"
#include "gstfilesink.h"
sink->buffer = g_malloc (sink->buffer_size);
buffer_size = sink->buffer_size;
}
- /* Cygwin does not have __fbufsize */
-#if defined(HAVE_STDIO_EXT_H) && !defined(__CYGWIN__)
+ /* Cygwin does not have __fbufsize, android adds it in API 23 */
+#if defined(HAVE_STDIO_EXT_H) && (!defined(__CYGWIN__) && (!defined(__ANDROID_API__) || __ANDROID_API__ >= 23))
GST_DEBUG_OBJECT (sink, "change buffer size %u to %u, mode %d",
(guint) __fbufsize (sink->file), buffer_size, mode);
#else
- GST_DEBUG_OBJECT (sink, "change buffer size to %u, mode %d",
+ GST_DEBUG_OBJECT (sink, "change buffer size to %u, mode %d",
sink->buffer_size, mode);
#endif
if (setvbuf (sink->file, sink->buffer, mode, buffer_size) != 0) {
#include <unistd.h>
#endif
-#ifdef __BIONIC__ /* Android */
-#undef lseek
-#define lseek lseek64
-#undef off_t
-#define off_t guint64
-#endif
-
#ifdef HAVE_FSEEKO
#define FSEEK_FILE(file,offset) (fseeko (file, (off_t) offset, SEEK_SET) != 0)
#elif defined (G_OS_UNIX) || defined (G_OS_WIN32)