ports/145206: fix patch-loader_png.c for graphics/imlib2/files

Takuya Harada tharada at e-mail.jp
Tue Mar 30 14:10:08 UTC 2010


>Number:         145206
>Category:       ports
>Synopsis:       fix patch-loader_png.c for graphics/imlib2/files
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar 30 14:10:07 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Takuya Harada
>Release:        FreeBSD 9.0-CURRENT
>Organization:
Ohu University
>Environment:
FreeBSD x61.develop.localnet 9.0-CURRENT FreeBSD 9.0-CURRENT #0: Sat Mar  6 08:26:44 JST 2010     root at x61.example.com:/usr/obj/usr/src/sys/GENERIC  i386
>Description:
According to libpng(3), fix of patch-loader_png.c described below has been prepared. After fix, x11/wbar works fine. Please confirm it.

********** cut here*********************************************************
--- ./patch-loader_png.c	2010-03-30 22:51:16.000000000 +0900
+++ ./my-patch-loader_png.c	2010-03-30 22:49:18.000000000 +0900
@@ -5,7 +5,7 @@
          /* if we haven't read the header before, set the header data */
          fread(buf, 1, PNG_BYTES_TO_CHECK, f);
 -        if (!png_check_sig(buf, PNG_BYTES_TO_CHECK))
-+        if (png_check_sig(buf, 0, PNG_BYTES_TO_CHECK) != 0)
++        if (png_sig_cmp(buf, 0, PNG_BYTES_TO_CHECK))
            {
               fclose(f);
               return 0;
********** cut here*********************************************************
>How-To-Repeat:
None.
>Fix:
cd /usr/ports/graphics/imlib2/files
patch < /path/to/fix-file-described-above
cd ..
make clean && make && make deinstall && make reinstall clean

Patch attached with submission follows:

--- ./patch-loader_png.c	2010-03-30 22:51:16.000000000 +0900
+++ ./my-patch-loader_png.c	2010-03-30 22:49:18.000000000 +0900
@@ -5,7 +5,7 @@
          /* if we haven't read the header before, set the header data */
          fread(buf, 1, PNG_BYTES_TO_CHECK, f);
 -        if (!png_check_sig(buf, PNG_BYTES_TO_CHECK))
-+        if (png_check_sig(buf, 0, PNG_BYTES_TO_CHECK) != 0)
++        if (png_sig_cmp(buf, 0, PNG_BYTES_TO_CHECK))
            {
               fclose(f);
               return 0;


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list