Mercurial > mplayer.hg
view drivers/Makefile @ 18708:9e2b300db17b
Change free_sh_audio() to take demuxer and stream id as parameters
(same as new_sh_audio()) instead of sh_audio_t *, use those to remove
the pointer from demuxer->a_streams[] before freeing it.
Some demuxers use free_sh_audio() to undo the creation of an
already-allocated audio stream in case of error. These uses were unsafe
since free_sh_audio() freed the data structure but left the pointer in
demuxer->a_streams[], leading to double free later in free_demuxer()
(and perhaps use of the freed stream before that, I didn't check).
author | uau |
---|---|
date | Wed, 14 Jun 2006 14:05:59 +0000 |
parents | b069afd2a0de |
children | 618d1857f4c4 |
line wrap: on
line source
KERNEL_DIR=/lib/modules/`uname -r`/build KERNEL_INCLUDES= $(KERNEL_DIR)/include INCLUDES = -I$(KERNEL_INCLUDES) -I$(KERNEL_INCLUDES)/asm VERSION = $(shell grep UTS_RELEASE $(KERNEL_INCLUDES)/linux/version.h | cut -d '"' -f2) MDIR = /lib/modules/$(VERSION)/misc ifneq (,$(findstring 2.6, $(VERSION))) obj-m += mga_vid.o CFLAGS = -O2 -D__KERNEL__ -DMODULE -include $(KERNEL_INCLUDES)/config/modversions.h -Wall else CFLAGS = -O2 -D__KERNEL__ -DMODULE -include $(KERNEL_INCLUDES)/linux/modversions.h -Wall endif all: ifneq (,$(findstring 2.6, $(VERSION))) $(MAKE) mga_vid.ko mga_vid_test else $(MAKE) mga_vid.o mga_vid_test endif # sis_vid.o mga_vid.o: mga_vid.c mga_vid.h $(CC) $(CFLAGS) $(INCLUDES) -c $(basename $@).c mga_vid.ko: mga_vid.c mga_vid.h $(MAKE) -C $(KERNEL_DIR) SUBDIRS=$(PWD) modules sis_vid.o: sis_vid.c sis_vid.h $(CC) $(CFLAGS) $(INCLUDES) -c $(basename $@).c mga_vid_test: mga_vid_test.c $(CC) -O $(INCLUDES) -o $@ $@.c tdfx_vid.o: tdfx_vid.c 3dfx.h $(CC) $(CFLAGS) $(INCLUDES) -c $(basename $@).c tdfx_vid_tst: tdfx_vid_tst.c $(CC) -O $(INCLUDES) -o $@ $@.c install: mga_vid.o -mkdir -p $(MDIR) ifneq (,$(findstring 2.6, $(VERSION))) install -m 644 mga_vid.ko $(MDIR)/mga_vid.ko else install -m 644 mga_vid.o $(MDIR)/mga_vid.o endif depmod -a dep: clean: rm -f *.o *.a *~ rm -f *.ko .mga* mga_vid.mod.c distclean: clean rm -f mga_vid_test tdfx_vid_tst