]> git.sesse.net Git - vlc/blobdiff - src/misc/block.c
For consistency, remove references to vlc from libvlc
[vlc] / src / misc / block.c
index f2d54c2ca01c8e2b2adcd64160342f9cb9bb2f5a..694acf8d0f01d97f6e41ddb8336b39ec15e187d5 100644 (file)
@@ -1,7 +1,7 @@
 /*****************************************************************************
  * block.c: Data blocks management functions
  *****************************************************************************
- * Copyright (C) 2003-2004 VideoLAN
+ * Copyright (C) 2003-2004 the VideoLAN team
  * $Id$
  *
  * Authors: Laurent Aimar <fenrir@videolan.org>
@@ -18,7 +18,7 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
 /*****************************************************************************
@@ -64,6 +64,7 @@ block_t *__block_New( vlc_object_t *p_obj, int i_size )
 
     /* Fill all fields */
     p_block->p_next         = NULL;
+    p_block->p_prev         = NULL;
     p_block->i_flags        = 0;
     p_block->i_pts          = 0;
     p_block->i_dts          = 0;
@@ -76,7 +77,7 @@ block_t *__block_New( vlc_object_t *p_obj, int i_size )
     p_block->pf_release     = BlockRelease;
 
     /* Is ok, as no comunication between p_vlc */
-    p_block->p_manager      = VLC_OBJECT( p_obj->p_vlc );
+    p_block->p_manager      = VLC_OBJECT( p_obj->p_libvlc );
     p_block->p_sys          = p_sys;
 
     return p_block;
@@ -100,9 +101,9 @@ block_t *block_Realloc( block_t *p_block, int i_prebody, int i_body )
 
     if( i_body < 0 || i_buffer_size <= 0 ) return NULL;
 
-    if( i_prebody < ( p_block->p_buffer - p_block->p_sys->p_allocated_buffer +
-                      p_block->p_sys->i_allocated_buffer ) ||
-        p_block->p_buffer - i_prebody > p_block->p_sys->p_allocated_buffer )
+    if( p_block->p_buffer - i_prebody > p_block->p_sys->p_allocated_buffer &&
+        p_block->p_buffer - i_prebody < p_block->p_sys->p_allocated_buffer +
+        p_block->p_sys->i_allocated_buffer )
     {
         p_block->p_buffer -= i_prebody;
         p_block->i_buffer += i_prebody;
@@ -150,7 +151,7 @@ block_fifo_t *__block_FifoNew( vlc_object_t *p_obj )
 {
     block_fifo_t *p_fifo;
 
-    p_fifo = malloc( sizeof( vlc_object_t ) );
+    p_fifo = malloc( sizeof( block_fifo_t ) );
     vlc_mutex_init( p_obj, &p_fifo->lock );
     vlc_cond_init( p_obj, &p_fifo->wait );
     p_fifo->i_depth = p_fifo->i_size = 0;