]> git.sesse.net Git - vlc/blobdiff - modules/codec/png.c
new (failing) test for libvlc
[vlc] / modules / codec / png.c
index 2c13d0219771eaf7e477e90bffc154176c50b06a..d91168c14800682ea31ba9b14ec9968bfe5771e0 100644 (file)
 /*****************************************************************************
  * Preamble
  *****************************************************************************/
-#include <vlc/vlc.h>
-#include <vlc/decoder.h>
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
 
+#include <vlc/vlc.h>
+#include <vlc_codec.h>
+#include <vlc_vout.h>
 #include <png.h>
 
 /*****************************************************************************
@@ -92,7 +96,7 @@ static int OpenDecoder( vlc_object_t *p_this )
 static void user_read( png_structp p_png, png_bytep data, png_size_t i_length )
 {
     block_t *p_block = (block_t *)png_get_io_ptr( p_png );
-    png_size_t i_read = __MIN( p_block->i_buffer, (int)i_length );
+    png_size_t i_read = __MIN( p_block->i_buffer, i_length );
     memcpy( data, p_block->p_buffer, i_length );
     p_block->p_buffer += i_length;
     p_block->i_buffer -= i_length;
@@ -143,7 +147,7 @@ static picture_t *DecodeBlock( decoder_t *p_dec, block_t **pp_block )
         block_Release( p_block ); *pp_block = NULL;
         return NULL;
     }
-    
     p_info = png_create_info_struct( p_png );
     if( p_info == NULL )
     {
@@ -230,7 +234,7 @@ static picture_t *DecodeBlock( decoder_t *p_dec, block_t **pp_block )
 
  error:
 
-    if( p_row_pointers ) free( p_row_pointers );
+    free( p_row_pointers );
     png_destroy_read_struct( &p_png, &p_info, &p_end_info );
     block_Release( p_block ); *pp_block = NULL;
     return NULL;