summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_nut.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmpdemux/demux_nut.c')
-rw-r--r--libmpdemux/demux_nut.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libmpdemux/demux_nut.c b/libmpdemux/demux_nut.c
index 9f4a788484..31669701d7 100644
--- a/libmpdemux/demux_nut.c
+++ b/libmpdemux/demux_nut.c
@@ -48,7 +48,6 @@ static off_t mp_seek(void * h, long long pos, int whence) {
static int nut_check_file(demuxer_t * demuxer) {
uint8_t buf[ID_LENGTH];
- nut_priv_t * priv = demuxer->priv = calloc(1, sizeof(nut_priv_t));
if (stream_read(demuxer->stream, buf, ID_LENGTH) != ID_LENGTH) return 0;
@@ -72,7 +71,7 @@ static demuxer_t * demux_open_nut(demuxer_t * demuxer) {
.read_index = index_mode,
.cache_syncpoints = 1,
};
- nut_priv_t * priv = demuxer->priv;
+ nut_priv_t * priv = demuxer->priv = calloc(1, sizeof(nut_priv_t));
nut_context_t * nut = priv->nut = nut_demuxer_init(&dopts);
nut_stream_header_t * s;
int ret;
@@ -276,6 +275,7 @@ static int demux_control_nut(demuxer_t * demuxer, int cmd, void * arg) {
static void demux_close_nut(demuxer_t *demuxer) {
nut_priv_t * priv = demuxer->priv;
+ if (!priv) return;
nut_demuxer_uninit(priv->nut);
free(demuxer->priv);
demuxer->priv = NULL;