Sophie

Sophie

distrib > Mandriva > 2009.0 > x86_64 > by-pkgid > 337d034ab010a353f1da10d8796e4546 > files > 3

libpng-1.2.31-2.2mdv2009.0.src.rpm

diff -Naurp libpng-1.2.31/pngread.c libpng-1.2.31.oden/pngread.c
--- libpng-1.2.31/pngread.c	2009-02-19 12:40:46.000000000 -0500
+++ libpng-1.2.31.oden/pngread.c	2009-02-19 12:38:14.000000000 -0500
@@ -1577,11 +1577,11 @@ png_read_png(png_structp png_ptr, png_in
 #ifdef PNG_FREE_ME_SUPPORTED
       info_ptr->free_me |= PNG_FREE_ROWS;
 #endif
+      png_memset(info_ptr->row_pointers, 0, info_ptr->height
+         * png_sizeof(png_bytep));
       for (row = 0; row < (int)info_ptr->height; row++)
-      {
          info_ptr->row_pointers[row] = (png_bytep)png_malloc(png_ptr,
             png_get_rowbytes(png_ptr, info_ptr));
-      }
    }
 
    png_read_image(png_ptr, info_ptr->row_pointers);
diff -Naurp libpng-1.2.31/pngrtran.c libpng-1.2.31.oden/pngrtran.c
--- libpng-1.2.31/pngrtran.c	2009-02-19 12:40:46.000000000 -0500
+++ libpng-1.2.31.oden/pngrtran.c	2009-02-19 12:39:33.000000000 -0500
@@ -309,10 +309,9 @@ png_set_dither(png_structp png_ptr, png_
 
          hash = (png_dsortpp)png_malloc(png_ptr, (png_uint_32)(769 *
             png_sizeof(png_dsortp)));
-         for (i = 0; i < 769; i++)
-            hash[i] = NULL;
-/*         png_memset(hash, 0, 769 * png_sizeof(png_dsortp)); */
 
+           png_memset(hash, 0, 769 * png_sizeof(png_dsortp));
+  
          num_new_palette = num_palette;
 
          /* initial wild guess at how far apart the farthest pixel
@@ -4133,6 +4132,8 @@ png_build_gamma_table(png_structp png_pt
         double fin, fout;
         png_uint_32 last, max;
 
+        png_memset(png_ptr->gamma_16_table, 0, num * png_sizeof(png_uint_16p)); 
+
         for (i = 0; i < num; i++)
         {
            png_ptr->gamma_16_table[i] = (png_uint_16p)png_malloc(png_ptr,
@@ -4188,6 +4189,8 @@ png_build_gamma_table(png_structp png_pt
         png_ptr->gamma_16_to_1 = (png_uint_16pp)png_malloc(png_ptr,
            (png_uint_32)(num * png_sizeof(png_uint_16p )));
 
+        png_memset(png_ptr->gamma_16_to_1, 0, num * png_sizeof(png_uint_16p)); 
+
         for (i = 0; i < num; i++)
         {
            png_ptr->gamma_16_to_1[i] = (png_uint_16p)png_malloc(png_ptr,
@@ -4211,6 +4214,9 @@ png_build_gamma_table(png_structp png_pt
         png_ptr->gamma_16_from_1 = (png_uint_16pp)png_malloc(png_ptr,
            (png_uint_32)(num * png_sizeof(png_uint_16p)));
 
+        png_memset(png_ptr->gamma_16_from_1, 0,
+           num * png_sizeof(png_uint_16p)); 
+
         for (i = 0; i < num; i++)
         {
            png_ptr->gamma_16_from_1[i] = (png_uint_16p)png_malloc(png_ptr,
diff -Naurp libpng-1.2.31/pngrutil.c libpng-1.2.31.oden/pngrutil.c
--- libpng-1.2.31/pngrutil.c	2009-02-19 12:40:46.000000000 -0500
+++ libpng-1.2.31.oden/pngrutil.c	2009-02-19 12:38:14.000000000 -0500
@@ -3389,9 +3389,9 @@ defined(PNG_USER_TRANSFORM_PTR_SUPPORTED
    png_debug1(3, "width = %lu,\n", png_ptr->width);
    png_debug1(3, "height = %lu,\n", png_ptr->height);
    png_debug1(3, "iwidth = %lu,\n", png_ptr->iwidth);
-   png_debug1(3, "num_rows = %lu\n", png_ptr->num_rows);
+   png_debug1(3, "num_rows = %lu,\n", png_ptr->num_rows);
    png_debug1(3, "rowbytes = %lu,\n", png_ptr->rowbytes);
-   png_debug1(3, "irowbytes = %lu,\n", png_ptr->irowbytes);
+   png_debug1(3, "irowbytes = %lu\n", png_ptr->irowbytes);
 
    png_ptr->flags |= PNG_FLAG_ROW_INIT;
 }
diff -Naurp libpng-1.2.31/pngset.c libpng-1.2.31.oden/pngset.c
--- libpng-1.2.31/pngset.c	2009-02-19 12:40:46.000000000 -0500
+++ libpng-1.2.31.oden/pngset.c	2009-02-19 12:38:14.000000000 -0500
@@ -435,7 +435,11 @@ png_set_pCAL(png_structp png_ptr, png_in
       return;
    }
 
-   info_ptr->pcal_params[nparams] = NULL;
+#ifdef PNG_FREE_ME_SUPPORTED
+   info_ptr->free_me |= PNG_FREE_PCAL;
+#endif
+
+   png_memset(info_ptr->pcal_params, 0, (nparams + 1) * png_sizeof(png_charp));
 
    for (i = 0; i < nparams; i++)
    {
@@ -452,9 +456,6 @@ png_set_pCAL(png_structp png_ptr, png_in
    }
 
    info_ptr->valid |= PNG_INFO_pCAL;
-#ifdef PNG_FREE_ME_SUPPORTED
-   info_ptr->free_me |= PNG_FREE_PCAL;
-#endif
 }
 #endif
 
diff -Naurp libpng-1.2.31/pngtest.c libpng-1.2.31.oden/pngtest.c
--- libpng-1.2.31/pngtest.c	2009-02-19 12:40:46.000000000 -0500
+++ libpng-1.2.31.oden/pngtest.c	2009-02-19 12:41:34.000000000 -0500
@@ -1217,6 +1217,8 @@ test_one_file(PNG_CONST char *inname, PN
       {
 #ifndef SINGLE_ROWBUF_ALLOC
          png_debug2(0, "\nAllocating row buffer (pass %d, y = %ld)...", pass, y);
+         png_debug2(0, "Allocating row buffer (pass %d, y = %ld)...", pass, y);
+
          row_buf = (png_bytep)png_malloc(read_ptr,
             png_get_rowbytes(read_ptr, read_info_ptr));
          png_debug2(0, "0x%08lx (%ld bytes)\n", (unsigned long)row_buf,