[SCM] libav/experimental: Deobfuscade decodeTonalComponents calling logic.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:59:01 UTC 2013


The following commit has been merged in the experimental branch:
commit b8c4a51598fc34a7613dc5e94cbf067d11c61a08
Author: Benjamin Larsson <banan at ludd.ltu.se>
Date:   Wed Apr 18 19:58:20 2007 +0000

    Deobfuscade decodeTonalComponents calling logic.
    
    Originally committed as revision 8757 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/atrac3.c b/libavcodec/atrac3.c
index 4d676c1..0e6d184 100644
--- a/libavcodec/atrac3.c
+++ b/libavcodec/atrac3.c
@@ -409,22 +409,19 @@ static int decodeSpectrum (GetBitContext *gb, float *pOut)
  * Restore the quantized tonal components
  *
  * @param gb            the GetBit context
- * @param numComponents tonal components to report back
  * @param pComponent    tone component
  * @param numBands      amount of coded bands
  */
 
-static int decodeTonalComponents (GetBitContext *gb, int *numComponents, tonal_component *pComponent, int numBands)
+static int decodeTonalComponents (GetBitContext *gb, tonal_component *pComponent, int numBands)
 {
     int i,j,k,cnt;
-    int   component_count, components, coding_mode_selector, coding_mode, coded_values_per_component;
+    int   components, coding_mode_selector, coding_mode, coded_values_per_component;
     int   sfIndx, coded_values, max_coded_values, quant_step_index, coded_components;
     int   band_flags[4], mantissa[8];
     float  *pCoef;
     float  scalefactor;
-
-    component_count = 0;
-    *numComponents = 0;
+    int   component_count = 0;
 
     components = get_bits(gb,5);
 
@@ -480,9 +477,7 @@ static int decodeTonalComponents (GetBitContext *gb, int *numComponents, tonal_c
         }
     }
 
-    *numComponents = component_count;
-
-    return 0;
+    return component_count;
 }
 
 /**
@@ -739,8 +734,8 @@ static int decodeChannelSoundUnit (ATRAC3Context *q, GetBitContext *gb, channel_
     result = decodeGainControl (gb, &(pSnd->gainBlock[pSnd->gcBlkSwitch]), pSnd->bandsCoded);
     if (result) return result;
 
-    result = decodeTonalComponents (gb, &pSnd->numComponents, pSnd->components, pSnd->bandsCoded);
-    if (result) return result;
+    pSnd->numComponents = decodeTonalComponents (gb, pSnd->components, pSnd->bandsCoded);
+    if (pSnd->numComponents == -1) return -1;
 
     numSubbands = decodeSpectrum (gb, pSnd->spectrum);
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list