Hi,

this fixes an obvious use after free in libdvdread. With this diff, ogle
is usable again and vlc doesn't abort on exit.

Ok?

Ciao,
        Kili

Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/libdvdread/Makefile,v
retrieving revision 1.27
diff -u -p -r1.27 Makefile
--- Makefile    27 Apr 2015 12:17:06 -0000      1.27
+++ Makefile    15 Mar 2016 19:24:12 -0000
@@ -4,6 +4,7 @@ COMMENT =       accessing DVD files
 
 VER =          5.0.3
 DISTNAME =     libdvdread-${VER}
+REVISION =     0
 CATEGORIES =   devel
 MASTER_SITES = http://download.videolan.org/pub/videolan/libdvdread/${VER}/
 EXTRACT_SUFX = .tar.bz2
Index: patches/patch-src_ifo_read_c
===================================================================
RCS file: patches/patch-src_ifo_read_c
diff -N patches/patch-src_ifo_read_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_ifo_read_c        15 Mar 2016 19:24:12 -0000
@@ -0,0 +1,19 @@
+$OpenBSD$
+
+Fix write after free.
+
+From git commit 4e269e52103a0422a3954ecc2f1901dec5fb4f0d (Petri
+Hintukainen)
+
+--- src/ifo_read.c.orig        Wed Jan 21 17:22:42 2015
++++ src/ifo_read.c     Tue Mar 15 20:06:08 2016
+@@ -1118,8 +1118,8 @@ void ifoFree_TT_SRPT(ifo_handle_t *ifofile) {
+ 
+   if(ifofile->tt_srpt) {
+     free(ifofile->tt_srpt->title);
+-    free(ifofile->tt_srpt);
+     ifofile->tt_srpt->title = NULL;
++    free(ifofile->tt_srpt);
+     ifofile->tt_srpt = NULL;
+   }
+ }

Reply via email to