summaryrefslogtreecommitdiff
path: root/user/vorbis-tools/CVE-2014-9640.patch
blob: f21994b58bba9b5e245b351af273259f77d1face (plain) (blame)
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
50
51
From 514116d7bea89dad9f1deb7617b2277b5e9115cd Mon Sep 17 00:00:00 2001
From: Gregory Maxwell <greg@xiph.org>
Date: Wed, 16 Apr 2014 23:55:10 +0000
Subject: [PATCH] oggenc: fix crash on raw file close, reported by Hanno in
 issue #2009. pointer to a non-static struct was escaping its scope. Also fix
 a C99-ism.

svn path=/trunk/vorbis-tools/; revision=19117
---
 oggenc/oggenc.c   | 4 ++--
 oggenc/skeleton.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/oggenc/oggenc.c b/oggenc/oggenc.c
index 4a120f3..e7de0bb 100644
--- a/oggenc/oggenc.c
+++ b/oggenc/oggenc.c
@@ -97,6 +97,8 @@ int main(int argc, char **argv)
               .3,-1,
               0,0,0.f,
               0, 0, 0, 0, 0};
+    input_format raw_format = {NULL, 0, raw_open, wav_close, "raw", 
+      N_("RAW file reader")};
 
     int i;
 
@@ -239,8 +241,6 @@ int main(int argc, char **argv)
 
         if(opt.rawmode)
         {
-            input_format raw_format = {NULL, 0, raw_open, wav_close, "raw", 
-                N_("RAW file reader")};
 
             enc_opts.rate=opt.raw_samplerate;
             enc_opts.channels=opt.raw_channels;
diff --git a/oggenc/skeleton.h b/oggenc/skeleton.h
index cf87dc2..168b8b6 100644
--- a/oggenc/skeleton.h
+++ b/oggenc/skeleton.h
@@ -41,7 +41,7 @@ typedef struct {
     ogg_int64_t granule_rate_d;                            /* granule rate denominator */
     ogg_int64_t start_granule;                             /* start granule value */
     ogg_uint32_t preroll;                                   /* preroll */
-    unsigned char granule_shift; // a 8-bit field           /* 1 byte value holding the granule shift */
+    unsigned char granule_shift;                            /* 1 byte value holding the granule shift */
     char *message_header_fields;                            /* holds all the message header fields */
     /* current total size of the message header fields, for realloc purpose, initially zero */
     ogg_uint32_t current_header_size;
-- 
GitLab