summaryrefslogtreecommitdiff
path: root/multimedia/mpeg_encode/patches/patch-an
blob: 041ec73ba89531db877ff556b4026a14ac219e99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
$NetBSD: patch-an,v 1.1 2005/10/05 11:45:46 salo Exp $

Fix for SA17008, from Gentoo.

--- readframe.c.orig	1995-08-15 00:31:58.000000000 +0200
+++ readframe.c	2005-10-05 13:25:40.000000000 +0200
@@ -227,14 +227,22 @@
  * SIDE EFFECTS:    none
  *
  *===========================================================================*/
+void _ReadFrame(MpegFrame *frame, char *fileName, FILE *fileHook, char *conversion, boolean addPath);
+
+void ReadFrame(MpegFrame *frame, char *fileName, char *conversion, boolean addPath)
+{
+    _ReadFrame(frame, fileName, NULL, conversion, addPath);
+}
+
 void
-ReadFrame(frame, fileName, conversion, addPath)
+_ReadFrame(frame, fileName, fileHook, conversion, addPath)
     MpegFrame *frame;
     char *fileName;
+    FILE *fileHook;
     char *conversion;
     boolean addPath;
 {
-    FILE    *ifp;
+    FILE    *ifp = fileHook;
     char    command[1024];
     char    fullFileName[1024];
     MpegFrame    tempFrame;
@@ -274,6 +282,9 @@
     }
 #endif
 
+    if (fileHook)
+      goto file_is_already_opened;
+
     if ( fileType == ANY_FILE_TYPE ) {
     char *convertPtr, *commandPtr, *charPtr;
 
@@ -325,6 +336,7 @@
       exit(1);
     }
 
+file_is_already_opened:
     switch(baseFormat) {
     case YUV_FILE_TYPE: