view tremor/tremor.diff @ 28319:0c7a9144e5f0

Fix a NULL-check that used && instead of || and thus could not avoid crashes. Patch by Luis Felipe Strano Moraes (luis strano gmail com).
author reimar
date Sun, 25 Jan 2009 18:23:05 +0000
parents e61b6352f32f
children 60b7ea3da519
line wrap: on
line source

--- misc.h	2005-01-04 16:29:01.000000000 +0100
+++ misc.h	2004-12-30 13:09:20.000000000 +0100
@@ -29,8 +29,9 @@
 /* 64 bit multiply */
 
 #include <sys/types.h>
+#include "config.h"
 
-#if BYTE_ORDER==LITTLE_ENDIAN
+#ifndef WORDS_BIGENDIAN
 union magic {
   struct {
     ogg_int32_t lo;
@@ -38,9 +39,7 @@
   } halves;
   ogg_int64_t whole;
 };
-#endif 
-
-#if BYTE_ORDER==BIG_ENDIAN
+#else
 union magic {
   struct {
     ogg_int32_t hi;
--- sharedbook.c	30 Dec 2004 12:09:20 -0000	1.1
+++ sharedbook.c	18 Aug 2005 16:13:54 -0000
@@ -208,7 +211,7 @@
 	  int indexdiv=1;
 	  for(k=0;k<b->dim;k++){
 	    int index= (j/indexdiv)%quantvals;
-	    int point;
+	    ogg_int32_t point;
 	    int val=VFLOAT_MULTI(delta,delpoint,
 				 abs(b->quantlist[index]),&point);
 
@@ -242,7 +245,7 @@
 	  int         lastpoint=0;
 
 	  for(k=0;k<b->dim;k++){
-	    int point;
+	    ogg_int32_t point;
 	    int val=VFLOAT_MULTI(delta,delpoint,
 				 abs(b->quantlist[j*b->dim+k]),&point);
 
--- block.h	(revision 0)
+++ block.h	(revision 0)
@@ -0,0 +1,24 @@
+/********************************************************************
+ *                                                                  *
+ * THIS FILE IS PART OF THE OggVorbis 'TREMOR' CODEC SOURCE CODE.   *
+ *                                                                  *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
+ *                                                                  *
+ * THE OggVorbis 'TREMOR' SOURCE CODE IS (C) COPYRIGHT 1994-2002    *
+ * BY THE Xiph.Org FOUNDATION http://www.xiph.org/                  *
+ *                                                                  *
+ ********************************************************************
+
+ function: basic shared block operations
+
+ ********************************************************************/
+
+#ifndef _V_BLOCK_H_
+#define _V_BLOCK_H_
+
+void *_vorbis_block_alloc(vorbis_block *vb,long bytes);
+void _vorbis_block_ripcord(vorbis_block *vb);
+
+#endif
--- floor0.c	(revision 24821)
+++ floor0.c	(working copy)
@@ -25,6 +25,7 @@
 #include "codebook.h"
 #include "misc.h"
 #include "os.h"
+#include "block.h"
 
 #define LSP_FRACBITS 14
 
--- floor1.c	(revision 24821)
+++ floor1.c	(working copy)
@@ -24,6 +24,7 @@
 #include "registry.h"
 #include "codebook.h"
 #include "misc.h"
+#include "block.h"
 
 #define floor1_rangedB 140 /* floor 1 fixed at -140dB to 0dB range */
 
--- synthesis.c	(revision 24821)
+++ synthesis.c	(working copy)
@@ -23,6 +23,7 @@
 #include "registry.h"
 #include "misc.h"
 #include "os.h"
+#include "block.h"
 
 int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
   vorbis_dsp_state     *vd=vb->vd;
--- res012.c	(revision 24821)
+++ res012.c	(working copy)
@@ -25,6 +25,7 @@
 #include "codebook.h"
 #include "misc.h"
 #include "os.h"
+#include "block.h"
 
 typedef struct {
   vorbis_info_residue0 *info;
--- block.c	(revision 24821)
+++ block.c	(working copy)
@@ -25,6 +25,7 @@
 #include "window.h"
 #include "registry.h"
 #include "misc.h"
+#include "block.h"
 
 static int ilog(unsigned int v){
   int ret=0;
--- os.h	(revision 25873)
+++ os.h	(working copy)
@@ -20,18 +20,8 @@
 #include <math.h>
 #include "os_types.h"
 
-#ifndef _V_IFDEFJAIL_H_
-#  define _V_IFDEFJAIL_H_
+#define STIN static inline
 
-#  ifdef __GNUC__
-#    define STIN static __inline__
-#  elif _WIN32
-#    define STIN static __inline
-#  endif
-#else
-#  define STIN static
-#endif
-
 #ifndef M_PI
 #  define M_PI (3.1415926536f)
 #endif
--- os_types.h	2008-05-27 14:59:21.000000000 +0200
+++ os_types.h	2008-05-27 15:00:50.000000000 +0200
@@ -32,6 +32,15 @@
 #define _ogg_realloc realloc
 #define _ogg_free    free
 
+#include <inttypes.h>
+typedef int64_t  ogg_int64_t;
+typedef int32_t  ogg_int32_t;
+typedef int16_t  ogg_int16_t;
+typedef uint32_t ogg_uint32_t;
+typedef uint16_t ogg_uint16_t;
+
+#if 0
+
 #ifdef _WIN32 
 
 #  ifndef __GNUC__
@@ -85,4 +94,6 @@
 
 #endif
 
+#endif /* 0 */
+
 #endif  /* _OS_TYPES_H */