aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia/vdr-plugin-osdpip
diff options
context:
space:
mode:
authornox <nox@FreeBSD.org>2012-06-04 02:21:42 +0800
committernox <nox@FreeBSD.org>2012-06-04 02:21:42 +0800
commit10e47bff36ed810ea37ae2791ab4c41c2a0585cd (patch)
tree5e5e6bdf1678ef615819b521a53be3d035e574e6 /multimedia/vdr-plugin-osdpip
parent9ac6aff350860a28cfa1ba748c49d4219787c001 (diff)
downloadfreebsd-ports-gnome-10e47bff36ed810ea37ae2791ab4c41c2a0585cd.tar.gz
freebsd-ports-gnome-10e47bff36ed810ea37ae2791ab4c41c2a0585cd.tar.zst
freebsd-ports-gnome-10e47bff36ed810ea37ae2791ab4c41c2a0585cd.zip
- Fix osdteletext plugin calling free() when it should be calling av_free(),
and update to proper vdr 1.7.27 api while I'm here. - Bump PORTREVISION.
Diffstat (limited to 'multimedia/vdr-plugin-osdpip')
-rw-r--r--multimedia/vdr-plugin-osdpip/Makefile2
-rw-r--r--multimedia/vdr-plugin-osdpip/files/patch-decoder.c20
-rw-r--r--multimedia/vdr-plugin-osdpip/files/patch-receiver.c20
3 files changed, 41 insertions, 1 deletions
diff --git a/multimedia/vdr-plugin-osdpip/Makefile b/multimedia/vdr-plugin-osdpip/Makefile
index b54a1a7f2996..01d393b6f457 100644
--- a/multimedia/vdr-plugin-osdpip/Makefile
+++ b/multimedia/vdr-plugin-osdpip/Makefile
@@ -7,7 +7,7 @@
PORTNAME= vdr-plugin-osdpip
PORTVERSION= 0.1.1
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= multimedia
MASTER_SITES= http://projects.vdr-developer.org/attachments/download/880/
DISTNAME= ${PORTNAME:S/-plugin-/-/}-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}
diff --git a/multimedia/vdr-plugin-osdpip/files/patch-decoder.c b/multimedia/vdr-plugin-osdpip/files/patch-decoder.c
new file mode 100644
index 000000000000..0645b3bae435
--- /dev/null
+++ b/multimedia/vdr-plugin-osdpip/files/patch-decoder.c
@@ -0,0 +1,20 @@
+--- decoder.c.orig
++++ decoder.c
+@@ -55,13 +55,13 @@ int cDecoder::Close()
+ {
+ #ifndef USE_SWSCALE
+ delete[] m_BufferConvert;
+- free(m_PicConvert);
++ av_free(m_PicConvert);
+ #endif
+ delete[] m_BufferResample;
+- free(m_PicResample);
++ av_free(m_PicResample);
+ avcodec_close(m_Context);
+- free(m_Context);
+- free(m_PicDecoded);
++ av_free(m_Context);
++ av_free(m_PicDecoded);
+
+ return 0;
+ }
diff --git a/multimedia/vdr-plugin-osdpip/files/patch-receiver.c b/multimedia/vdr-plugin-osdpip/files/patch-receiver.c
new file mode 100644
index 000000000000..c0aabbd06d53
--- /dev/null
+++ b/multimedia/vdr-plugin-osdpip/files/patch-receiver.c
@@ -0,0 +1,20 @@
+--- receiver.c.orig
++++ receiver.c
+@@ -37,11 +37,16 @@ cOsdPipReceiver::cOsdPipReceiver(const c
+ cRingBufferFrame *ESBuffer):
+ #if (APIVERSNUM < 10500)
+ cReceiver(Channel->Ca(), 0, Channel->Vpid()),
+-#else
++#elif (APIVERSNUM < 10725)
+ cReceiver(Channel->GetChannelID(), 0, Channel->Vpid()),
++#else
++ cReceiver(Channel, 0),
+ #endif
+ cThread("osdpip_receiver")
+ {
++#if (APIVERSNUM >= 10725)
++ AddPid(Channel->Vpid());
++#endif
+ m_TSBuffer = new cRingBufferLinear(MEGABYTE(3), TS_SIZE * 2, true);
+ m_TSBuffer->SetTimeouts(0, 100);
+ m_ESBuffer = ESBuffer;