mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
139 lines
4.5 KiB
Diff
139 lines
4.5 KiB
Diff
diff -ruN frmts/gif.orig/biggifdataset.cpp frmts/gif/biggifdataset.cpp
|
|
--- frmts/gif.orig/biggifdataset.cpp 2014-04-16 20:04:33.000000000 +0000
|
|
+++ frmts/gif/biggifdataset.cpp 2014-06-11 12:39:28.420405033 +0000
|
|
@@ -339,7 +339,11 @@
|
|
/* If the file is already open, close it so we can restart. */
|
|
/* -------------------------------------------------------------------- */
|
|
if( hGifFile != NULL )
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile( hGifFile, NULL );
|
|
+#else
|
|
DGifCloseFile( hGifFile );
|
|
+#endif
|
|
|
|
/* -------------------------------------------------------------------- */
|
|
/* If we are actually reopening, then we assume that access to */
|
|
@@ -413,7 +417,11 @@
|
|
|
|
if( RecordType != IMAGE_DESC_RECORD_TYPE )
|
|
{
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile( hGifFile, NULL );
|
|
+#else
|
|
DGifCloseFile( hGifFile );
|
|
+#endif
|
|
hGifFile = NULL;
|
|
|
|
CPLError( CE_Failure, CPLE_OpenFailed,
|
|
@@ -423,7 +431,11 @@
|
|
|
|
if (DGifGetImageDesc(hGifFile) == GIF_ERROR)
|
|
{
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile( hGifFile, NULL );
|
|
+#else
|
|
DGifCloseFile( hGifFile );
|
|
+#endif
|
|
hGifFile = NULL;
|
|
|
|
CPLError( CE_Failure, CPLE_OpenFailed,
|
|
diff -ruN frmts/gif.orig/gifabstractdataset.cpp frmts/gif/gifabstractdataset.cpp
|
|
--- frmts/gif.orig/gifabstractdataset.cpp 2014-04-16 20:04:33.000000000 +0000
|
|
+++ frmts/gif/gifabstractdataset.cpp 2014-06-11 12:54:25.609072106 +0000
|
|
@@ -82,7 +82,11 @@
|
|
}
|
|
|
|
if( hGifFile )
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile( hGifFile, NULL );
|
|
+#else
|
|
DGifCloseFile( hGifFile );
|
|
+#endif
|
|
|
|
if( fp != NULL )
|
|
VSIFCloseL( fp );
|
|
diff -ruN frmts/gif.orig/gifdataset.cpp frmts/gif/gifdataset.cpp
|
|
--- frmts/gif.orig/gifdataset.cpp 2014-04-16 20:04:33.000000000 +0000
|
|
+++ frmts/gif/gifdataset.cpp 2014-06-11 12:45:37.318469917 +0000
|
|
@@ -386,13 +386,21 @@
|
|
CPLDebug( "GIF",
|
|
"Due to limitations of the GDAL GIF driver we deliberately avoid\n"
|
|
"opening large GIF files (larger than 100 megapixels).");
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile( hGifFile, NULL );
|
|
+#else
|
|
DGifCloseFile( hGifFile );
|
|
+#endif
|
|
VSIFCloseL( fp );
|
|
return NULL;
|
|
}
|
|
}
|
|
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile( hGifFile, NULL );
|
|
+#else
|
|
DGifCloseFile( hGifFile );
|
|
+#endif
|
|
|
|
VSIFSeekL( fp, 0, SEEK_SET);
|
|
|
|
@@ -417,7 +425,11 @@
|
|
if( nGifErr != GIF_OK || hGifFile->SavedImages == NULL )
|
|
{
|
|
VSIFCloseL( fp );
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ DGifCloseFile(hGifFile, NULL);
|
|
+#else
|
|
DGifCloseFile(hGifFile);
|
|
+#endif
|
|
|
|
if( nGifErr == D_GIF_ERR_DATA_TOO_BIG )
|
|
{
|
|
@@ -649,7 +661,11 @@
|
|
{
|
|
GifFreeMapObject(psGifCT);
|
|
GDALPrintGifError(hGifFile, "Error writing gif file.");
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ EGifCloseFile(hGifFile, NULL);
|
|
+#else
|
|
EGifCloseFile(hGifFile);
|
|
+#endif
|
|
VSIFCloseL( fp );
|
|
return NULL;
|
|
}
|
|
@@ -673,7 +689,11 @@
|
|
if (EGifPutImageDesc(hGifFile, 0, 0, nXSize, nYSize, bInterlace, NULL) == GIF_ERROR )
|
|
{
|
|
GDALPrintGifError(hGifFile, "Error writing gif file.");
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ EGifCloseFile(hGifFile, NULL);
|
|
+#else
|
|
EGifCloseFile(hGifFile);
|
|
+#endif
|
|
VSIFCloseL( fp );
|
|
return NULL;
|
|
}
|
|
@@ -756,7 +776,11 @@
|
|
/* -------------------------------------------------------------------- */
|
|
/* cleanup */
|
|
/* -------------------------------------------------------------------- */
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ if (EGifCloseFile(hGifFile, NULL) == GIF_ERROR)
|
|
+#else
|
|
if (EGifCloseFile(hGifFile) == GIF_ERROR)
|
|
+#endif
|
|
{
|
|
CPLError( CE_Failure, CPLE_AppDefined,
|
|
"EGifCloseFile() failed.\n" );
|
|
@@ -807,7 +831,11 @@
|
|
|
|
error:
|
|
if (hGifFile)
|
|
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
|
|
+ EGifCloseFile(hGifFile, NULL);
|
|
+#else
|
|
EGifCloseFile(hGifFile);
|
|
+#endif
|
|
if (fp)
|
|
VSIFCloseL( fp );
|
|
if (pabyScanline)
|