summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--audio/audio.c2
-rw-r--r--demux/demux_mf.c1
-rw-r--r--demux/mf.c1
-rw-r--r--mpvcore/codecs.c2
-rw-r--r--mpvcore/mp_common.h2
-rw-r--r--mpvcore/mp_talloc.h59
-rw-r--r--osdep/io.c6
-rw-r--r--stream/rar.c2
-rw-r--r--stream/stream_lavf.c2
-rw-r--r--ta/ta_talloc.h38
10 files changed, 45 insertions, 70 deletions
diff --git a/audio/audio.c b/audio/audio.c
index b40ef6fab3..a5cf52f5b3 100644
--- a/audio/audio.c
+++ b/audio/audio.c
@@ -19,8 +19,8 @@
#include <libavutil/mem.h>
+#include "talloc.h"
#include "mpvcore/mp_common.h"
-#include "mpvcore/mp_talloc.h"
#include "audio.h"
static void update_redundant_info(struct mp_audio *mpa)
diff --git a/demux/demux_mf.c b/demux/demux_mf.c
index fbcf3da961..1eea59a058 100644
--- a/demux/demux_mf.c
+++ b/demux/demux_mf.c
@@ -28,7 +28,6 @@
#include "talloc.h"
#include "config.h"
#include "mpvcore/mp_msg.h"
-#include "mpvcore/mp_talloc.h"
#include "stream/stream.h"
#include "demux.h"
diff --git a/demux/mf.c b/demux/mf.c
index 7b5b7aee3e..e50e10b43c 100644
--- a/demux/mf.c
+++ b/demux/mf.c
@@ -40,7 +40,6 @@
#include "mpvcore/mp_msg.h"
#include "stream/stream.h"
#include "options/path.h"
-#include "mpvcore/mp_talloc.h"
#include "mf.h"
diff --git a/mpvcore/codecs.c b/mpvcore/codecs.c
index 23f5402fc6..b5a07cf999 100644
--- a/mpvcore/codecs.c
+++ b/mpvcore/codecs.c
@@ -16,7 +16,7 @@
*/
#include <assert.h>
-#include "mpvcore/mp_talloc.h"
+#include "talloc.h"
#include "mpvcore/bstr.h"
#include "mpvcore/mp_msg.h"
#include "codecs.h"
diff --git a/mpvcore/mp_common.h b/mpvcore/mp_common.h
index ab1ccb9451..9e751ee851 100644
--- a/mpvcore/mp_common.h
+++ b/mpvcore/mp_common.h
@@ -24,7 +24,7 @@
#include <stdint.h>
#include "compat/compiler.h"
-#include "mpvcore/mp_talloc.h"
+#include "talloc.h"
// both int64_t and double should be able to represent this exactly
#define MP_NOPTS_VALUE (-1LL<<63)
diff --git a/mpvcore/mp_talloc.h b/mpvcore/mp_talloc.h
deleted file mode 100644
index eb62a21109..0000000000
--- a/mpvcore/mp_talloc.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * This file is part of mpv.
- *
- * mpv is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * mpv is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with mpv; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#ifndef MPV_TALLOC_H
-#define MPV_TALLOC_H
-
-#include "talloc.h"
-#include "compat/compiler.h"
-
-#define MP_TALLOC_ELEMS(p) (talloc_get_size(p) / sizeof((p)[0]))
-
-#define MP_RESIZE_ARRAY(ctx, p, count) do { \
- (p) = talloc_realloc_size((ctx), p, (count) * sizeof((p)[0])); } while (0)
-
-#define MP_TARRAY_GROW(ctx, p, nextidx) \
- do { \
- size_t nextidx_ = (nextidx); \
- if (nextidx_ >= MP_TALLOC_ELEMS(p)) \
- MP_RESIZE_ARRAY(ctx, p, (nextidx_ + 1) * 2);\
- } while (0)
-
-#define MP_GROW_ARRAY(p, nextidx) MP_TARRAY_GROW(NULL, p, nextidx)
-
-#define MP_TARRAY_APPEND(ctx, p, idxvar, ...) \
- do { \
- MP_TARRAY_GROW(ctx, p, idxvar); \
- (p)[(idxvar)] = (MP_EXPAND_ARGS(__VA_ARGS__));\
- (idxvar)++; \
- } while (0)
-
-// Doesn't actually free any memory, or do any other talloc calls.
-#define MP_TARRAY_REMOVE_AT(p, idxvar, at) \
- do { \
- size_t at_ = (at); \
- assert(at_ <= (idxvar)); \
- memmove((p) + at_, (p) + at_ + 1, \
- ((idxvar) - at_ - 1) * sizeof((p)[0])); \
- (idxvar)--; \
- } while (0)
-
-#define talloc_struct(ctx, type, ...) \
- talloc_memdup(ctx, &(type) MP_EXPAND_ARGS(__VA_ARGS__), sizeof(type))
-
-#endif
diff --git a/osdep/io.c b/osdep/io.c
index e816cc714d..19f0be1108 100644
--- a/osdep/io.c
+++ b/osdep/io.c
@@ -20,6 +20,8 @@
#include <unistd.h>
+#include "talloc.h"
+
#include "config.h"
#include "osdep/io.h"
@@ -46,8 +48,6 @@ bool mp_set_cloexec(int fd)
#include <stdio.h>
#include <stddef.h>
-#include "talloc.h"
-
//copied and modified from libav
//http://git.libav.org/?p=libav.git;a=blob;f=libavformat/os_support.c;h=a0fcd6c9ba2be4b0dbcc476f6c53587345cc1152;hb=HEADl30
@@ -79,8 +79,6 @@ char *mp_to_utf8(void *talloc_ctx, const wchar_t *s)
#include <fcntl.h>
#include <pthread.h>
-#include "mpvcore/mp_talloc.h"
-
//http://git.libav.org/?p=libav.git;a=blob;f=cmdutils.c;h=ade3f10ce2fc030e32e375a85fbd06c26d43a433#l161
static char** win32_argv_utf8;
diff --git a/stream/rar.c b/stream/rar.c
index 4147a86866..00c5c16725 100644
--- a/stream/rar.c
+++ b/stream/rar.c
@@ -31,8 +31,8 @@
#include <libavutil/intreadwrite.h>
+#include "talloc.h"
#include "mpvcore/mp_common.h"
-#include "mpvcore/mp_talloc.h"
#include "stream.h"
#include "rar.h"
diff --git a/stream/stream_lavf.c b/stream/stream_lavf.c
index 8f82aedf05..d3aaf52d85 100644
--- a/stream/stream_lavf.c
+++ b/stream/stream_lavf.c
@@ -29,7 +29,7 @@
#include "cookies.h"
#include "mpvcore/bstr.h"
-#include "mpvcore/mp_talloc.h"
+#include "talloc.h"
static int open_f(stream_t *stream, int mode);
static char **read_icy(stream_t *stream);
diff --git a/ta/ta_talloc.h b/ta/ta_talloc.h
index cd41e63818..ff131a610e 100644
--- a/ta/ta_talloc.h
+++ b/ta/ta_talloc.h
@@ -71,4 +71,42 @@ char *ta_talloc_vasprintf_append_buffer(char *s, const char *fmt, va_list ap) TA
char *ta_talloc_asprintf_append(char *s, const char *fmt, ...) TA_PRF(2, 3);
char *ta_talloc_asprintf_append_buffer(char *s, const char *fmt, ...) TA_PRF(2, 3);
+// mpv specific stuff - should be made part of proper TA API
+
+#define TA_EXPAND_ARGS(...) __VA_ARGS__
+
+#define MP_TALLOC_ELEMS(p) (talloc_get_size(p) / sizeof((p)[0]))
+
+#define MP_RESIZE_ARRAY(ctx, p, count) do { \
+ (p) = talloc_realloc_size((ctx), p, (count) * sizeof((p)[0])); } while (0)
+
+#define MP_TARRAY_GROW(ctx, p, nextidx) \
+ do { \
+ size_t nextidx_ = (nextidx); \
+ if (nextidx_ >= MP_TALLOC_ELEMS(p)) \
+ MP_RESIZE_ARRAY(ctx, p, (nextidx_ + 1) * 2);\
+ } while (0)
+
+#define MP_GROW_ARRAY(p, nextidx) MP_TARRAY_GROW(NULL, p, nextidx)
+
+#define MP_TARRAY_APPEND(ctx, p, idxvar, ...) \
+ do { \
+ MP_TARRAY_GROW(ctx, p, idxvar); \
+ (p)[(idxvar)] = (TA_EXPAND_ARGS(__VA_ARGS__));\
+ (idxvar)++; \
+ } while (0)
+
+// Doesn't actually free any memory, or do any other talloc calls.
+#define MP_TARRAY_REMOVE_AT(p, idxvar, at) \
+ do { \
+ size_t at_ = (at); \
+ assert(at_ <= (idxvar)); \
+ memmove((p) + at_, (p) + at_ + 1, \
+ ((idxvar) - at_ - 1) * sizeof((p)[0])); \
+ (idxvar)--; \
+ } while (0)
+
+#define talloc_struct(ctx, type, ...) \
+ talloc_memdup(ctx, &(type) TA_EXPAND_ARGS(__VA_ARGS__), sizeof(type))
+
#endif