forked from mirrors/nixpkgs
imlib2: 1.4.6 -> 1.4.8 (security)
Fixes: * CVE-2014-9762 * CVE-2014-9763 * CVE-2014-9764
This commit is contained in:
parent
17f41a7996
commit
94396b8d91
|
@ -1,21 +1,17 @@
|
|||
{ stdenv, fetchurl, xlibsWrapper, libjpeg, libtiff, giflib, libpng, bzip2, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "imlib2-1.4.6";
|
||||
name = "imlib2-1.4.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/enlightenment/${name}.tar.bz2";
|
||||
sha256 = "0x1j0ylpclkp8cfpwfpkjywqz124bqskyxbw8pvwzkv2gmrbwldg";
|
||||
sha256 = "0xxhgkd1axlcmf3kp1d7naiygparpg8l3sg3d263rhl2z0gm7aw9";
|
||||
};
|
||||
|
||||
buildInputs = [ xlibsWrapper libjpeg libtiff giflib libpng bzip2 ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
# From
|
||||
# https://github.com/PhantomX/slackbuilds/blob/master/imlib2/patches/imlib2-giflib51.patch
|
||||
patches = [ ./giflib51.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace imlib2-config.in \
|
||||
--replace "@my_libs@" ""
|
||||
|
|
|
@ -1,64 +0,0 @@
|
|||
diff -ruN imlib2-1.4.6.orig/src/modules/loaders/loader_gif.c imlib2-1.4.6/src/modules/loaders/loader_gif.c
|
||||
--- imlib2-1.4.6.orig/src/modules/loaders/loader_gif.c 2013-12-21 10:16:10.000000000 +0000
|
||||
+++ imlib2-1.4.6/src/modules/loaders/loader_gif.c 2014-05-27 09:52:35.857291512 +0000
|
||||
@@ -36,7 +36,7 @@
|
||||
#endif
|
||||
if (fd < 0)
|
||||
return 0;
|
||||
- gif = DGifOpenFileHandle(fd);
|
||||
+ gif = DGifOpenFileHandle(fd, NULL);
|
||||
if (!gif)
|
||||
{
|
||||
close(fd);
|
||||
@@ -60,13 +60,13 @@
|
||||
h = gif->Image.Height;
|
||||
if (!IMAGE_DIMENSIONS_OK(w, h))
|
||||
{
|
||||
- DGifCloseFile(gif);
|
||||
+ DGifCloseFile(gif, NULL);
|
||||
return 0;
|
||||
}
|
||||
rows = malloc(h * sizeof(GifRowType *));
|
||||
if (!rows)
|
||||
{
|
||||
- DGifCloseFile(gif);
|
||||
+ DGifCloseFile(gif, NULL);
|
||||
return 0;
|
||||
}
|
||||
for (i = 0; i < h; i++)
|
||||
@@ -78,7 +78,7 @@
|
||||
rows[i] = malloc(w * sizeof(GifPixelType));
|
||||
if (!rows[i])
|
||||
{
|
||||
- DGifCloseFile(gif);
|
||||
+ DGifCloseFile(gif, NULL);
|
||||
for (i = 0; i < h; i++)
|
||||
{
|
||||
if (rows[i])
|
||||
@@ -150,7 +150,7 @@
|
||||
im->data = (DATA32 *) malloc(sizeof(DATA32) * w * h);
|
||||
if (!im->data)
|
||||
{
|
||||
- DGifCloseFile(gif);
|
||||
+ DGifCloseFile(gif, NULL);
|
||||
free(rows);
|
||||
return 0;
|
||||
}
|
||||
@@ -181,7 +181,7 @@
|
||||
last_per = (int)per;
|
||||
if (!(progress(im, (int)per, 0, last_y, w, i)))
|
||||
{
|
||||
- DGifCloseFile(gif);
|
||||
+ DGifCloseFile(gif, NULL);
|
||||
for (i = 0; i < h; i++)
|
||||
{
|
||||
free(rows[i]);
|
||||
@@ -198,7 +198,7 @@
|
||||
{
|
||||
progress(im, 100, 0, last_y, w, h);
|
||||
}
|
||||
- DGifCloseFile(gif);
|
||||
+ DGifCloseFile(gif, NULL);
|
||||
for (i = 0; i < h; i++)
|
||||
{
|
||||
free(rows[i]);
|
Loading…
Reference in a new issue