author Cosmin Malutan <>
Mon, 28 Jul 2014 06:28:00 +0200
changeset 208285 1b581df81c9bd32339f3e5c3bb0e8bf11e160132
parent 130577 f24905861be56991d6572a9cf3bbf703724aa416
permissions -rw-r--r--
Bug 1032255 - TPS has to exit with code != 0 in case of failures. r=aeftimie, dhunt a=testonly DONTBUILD

diff --git a/media/libtheora/lib/huffdec.c b/media/libtheora/lib/huffdec.c
--- a/media/libtheora/lib/huffdec.c
+++ b/media/libtheora/lib/huffdec.c
@@ -320,16 +320,19 @@ static size_t oc_huff_node_size(int _nbi
 /*Produces a collapsed-tree representation of the given token list.
   _tree: The storage for the collapsed Huffman tree.
          This may be NULL to compute the required storage size instead of
           constructing the tree.
   _tokens:  A list of internal tokens, in the order they are found in the
              codebook, and the lengths of their corresponding codewords.
   _ntokens: The number of tokens corresponding to this tree node.
   Return: The number of words required to store the tree.*/
+#if defined(_MSC_VER) && _MSC_VER >= 1700
+#pragma optimize( "", off )
 static size_t oc_huff_tree_collapse(ogg_int16_t *_tree,
  unsigned char _tokens[][2],int _ntokens){
   ogg_int16_t   node[34];
   unsigned char depth[34];
   unsigned char last[34];
   size_t        ntree;
   int           ti;
   int           l;
@@ -367,16 +370,19 @@ static size_t oc_huff_tree_collapse(ogg_
       /*Pop back up a level of recursion.*/
       else if(l-->0)nbits=depth[l+1]-depth[l];
   return ntree;
+#if defined(_MSC_VER) && _MSC_VER >= 1700
+#pragma optimize( "", on )
 /*Unpacks a set of Huffman trees, and reduces them to a collapsed
   _opb:   The buffer to unpack the trees from.
   _nodes: The table to fill with the Huffman trees.
   Return: 0 on success, or a negative value on error.
           The caller is responsible for cleaning up any partially initialized
            _nodes on failure.*/