Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Mar 2013 18:03:03 +0000 (UTC)
From:      Juergen Lock <nox@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r314671 - in head/multimedia/vdr: . files
Message-ID:  <201303191803.r2JI33Ht085057@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nox
Date: Tue Mar 19 18:03:02 2013
New Revision: 314671
URL: http://svnweb.freebsd.org/changeset/ports/314671

Log:
  - Add fix for crashes when cutting. [1]
  - Convert Makefile header.
  - Bump PORTREVISION.
  
  Reported by:	gb+ML-2011@derbrauer.homelinux.net (Gerhard Brauer) [1]

Added:
  head/multimedia/vdr/files/patch-z-cutter.c   (contents, props changed)
Modified:
  head/multimedia/vdr/Makefile

Modified: head/multimedia/vdr/Makefile
==============================================================================
--- head/multimedia/vdr/Makefile	Tue Mar 19 18:00:29 2013	(r314670)
+++ head/multimedia/vdr/Makefile	Tue Mar 19 18:03:02 2013	(r314671)
@@ -1,13 +1,9 @@
-# New ports collection makefile for:	vdr
-# Date created:		Wed Apr 14 18:11:42 CEST 2010
-# Whom:			Juergen Lock <nox@freebsd.org>
-#
+# Created by: Juergen Lock <nox@freebsd.org>
 # $FreeBSD$
-#
 
 PORTNAME=	vdr
 PORTVERSION=	1.7.29
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	multimedia
 MASTER_SITES=	ftp://ftp.tvdr.de/vdr/Developer/
 

Added: head/multimedia/vdr/files/patch-z-cutter.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/multimedia/vdr/files/patch-z-cutter.c	Tue Mar 19 18:03:02 2013	(r314671)
@@ -0,0 +1,61 @@
+--- cutter.c.orig
++++ cutter.c
+@@ -83,7 +83,18 @@ void cCuttingThread::Action(void)
+      int LastIFrame = 0;
+      toMarks.Add(0);
+      toMarks.Save();
++#ifdef __FreeBSD__
++     // XXX save thread stack space
++     uchar *buffer = MALLOC(uchar, MAXFRAMESIZE);
++     uchar *buffer2 = MALLOC(uchar, MAXFRAMESIZE);
++     if (buffer == NULL || buffer2 == NULL) {
++        free(buffer);
++        error = "malloc";
++        return;
++        }
++#else
+      uchar buffer[MAXFRAMESIZE], buffer2[MAXFRAMESIZE];
++#endif
+      int Length2;
+      bool CheckForSeamlessStream = false;
+      bool LastMark = false;
+@@ -108,7 +119,7 @@ void cCuttingThread::Action(void)
+                  CurrentFileNumber = FileNumber;
+                  }
+               if (fromFile) {
+-                 int len = ReadFrame(fromFile, buffer,  Length, sizeof(buffer));
++                 int len = ReadFrame(fromFile, buffer,  Length, MAXFRAMESIZE);
+                  if (len < 0) {
+                     error = "ReadFrame";
+                     break;
+@@ -193,7 +204,7 @@ void cCuttingThread::Action(void)
+                     if (FileNumber != CurrentFileNumber)
+                        fromFile = fromFileName->SetOffset(FileNumber, FileOffset);
+                     if (fromFile) {
+-                       int len = ReadFrame(fromFile, buffer2, Length2, sizeof(buffer2));
++                       int len = ReadFrame(fromFile, buffer2, Length2, MAXFRAMESIZE);
+                        if (len >= 0 && len == Length2)
+                           CheckForSeamlessStream = true;
+                        }
+@@ -216,6 +227,10 @@ void cCuttingThread::Action(void)
+               }
+            }
+      Recordings.TouchUpdate();
++#ifdef __FreeBSD__
++     free(buffer);
++     free(buffer2);
++#endif
+      }
+   else
+      esyslog("no editing marks found!");
+--- thread.c.orig
++++ thread.c
+@@ -242,7 +242,7 @@ void cThread::SetPriority(int Priority)
+ void cThread::SetIOPriority(int Priority)
+ {
+ #ifdef __FreeBSD__
+-  esyslog("ERROR: syscall(SYS_ioprio_set ...) unsupported on FreeBSD");
++  // esyslog("ERROR: syscall(SYS_ioprio_set ...) unsupported on FreeBSD");
+ #else
+   if (syscall(SYS_ioprio_set, 1, 0, (Priority & 0xff) | (2 << 13)) < 0) // best effort class
+      LOG_ERROR;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303191803.r2JI33Ht085057>