You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.5 KiB
48 lines
1.5 KiB
6 years ago
|
From 0ae66d565e6bead8604d312bc1a4e9dccf245c88 Mon Sep 17 00:00:00 2001
|
||
|
From: Tim Terriberry <tterribe@xiph.org>
|
||
|
Date: Tue, 8 May 2012 02:51:57 +0000
|
||
|
Subject: [PATCH] Fix pp_sharp_mod calculation.
|
||
|
|
||
|
This was broken when the dequant_tables indexing changed in commit
|
||
|
r16102, but it only affected post-processing quality, so we never
|
||
|
noticed.
|
||
|
With gcc 4.8.0, this can now trigger a segfault during decoder
|
||
|
initialization.
|
||
|
|
||
|
svn path=/trunk/theora/; revision=18268
|
||
|
---
|
||
|
lib/decode.c | 8 ++++----
|
||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||
|
|
||
|
Note: The hunk header was modified from
|
||
|
|
||
|
@@ -400,10 +400,10 @@
|
||
|
|
||
|
to
|
||
|
|
||
|
@@ -397,10 +397,10 @@
|
||
|
|
||
|
to match the source code in the libtheora-1.1.1 tar-ball.
|
||
|
|
||
|
diff --git a/lib/decode.c b/lib/decode.c
|
||
|
index b803505..9f2516a 100644
|
||
|
--- a/lib/decode.c
|
||
|
+++ b/lib/decode.c
|
||
|
@@ -397,10 +397,10 @@ static int oc_dec_init(oc_dec_ctx *_dec,const th_info *_info,
|
||
|
int qsum;
|
||
|
qsum=0;
|
||
|
for(qti=0;qti<2;qti++)for(pli=0;pli<3;pli++){
|
||
|
- qsum+=_dec->state.dequant_tables[qti][pli][qi][12]+
|
||
|
- _dec->state.dequant_tables[qti][pli][qi][17]+
|
||
|
- _dec->state.dequant_tables[qti][pli][qi][18]+
|
||
|
- _dec->state.dequant_tables[qti][pli][qi][24]<<(pli==0);
|
||
|
+ qsum+=_dec->state.dequant_tables[qi][pli][qti][12]+
|
||
|
+ _dec->state.dequant_tables[qi][pli][qti][17]+
|
||
|
+ _dec->state.dequant_tables[qi][pli][qti][18]+
|
||
|
+ _dec->state.dequant_tables[qi][pli][qti][24]<<(pli==0);
|
||
|
}
|
||
|
_dec->pp_sharp_mod[qi]=-(qsum>>11);
|
||
|
}
|
||
|
--
|
||
|
2.10.2
|