[Digikam-devel] branches/extragear/kde3/libs/libkdcraw

Gilles Caulier caulier.gilles at gmail.com
Sun Jan 4 16:52:42 GMT 2009


SVN commit 905573 by cgilles:

libkdcraw from KDE3 branch: updated to libraw to 0.6.5:
-Fixed file descriptor and buffer memory leak when thumbnail extractor is called,
 but library object is not properly initialized.
-Fixes in Imacon files unpacking.
-Fixes in Hasselblad .fff files unpacking.

CCMAIL: digikam-devel at kde.org
 


 M  +8 -3      NEWS  
 M  +16 -13    libraw/internal/dcraw_common.cpp  
 M  +1 -1      libraw/internal/defines.h  
 M  +7 -7      libraw/internal/foveon.cpp  
 M  +1 -1      libraw/libraw/libraw_version.h  
 D             libraw/samples/dcraw_half.c  
 AM            libraw/samples/dcraw_half.cpp   [License: GPL (v2+) (wrong address)]
 D             libraw/samples/half_mt.c  
 AM            libraw/samples/half_mt.cpp   [License: GPL (v2+) (wrong address)]
 AM            libraw/samples/half_mt_win32.cpp   [License: GPL (v2+) (wrong address)]
 M  +4 -4      libraw/src/libraw_cxx.cpp  


--- branches/extragear/kde3/libs/libkdcraw/NEWS #905572:905573
@@ -1,17 +1,22 @@
 0.1.8
 ------------------------------------------------------------------------
 Fix PPM color preview extraction.
+Updated to libraw 0.6.5:
+ -Fixed file descriptor and buffer memory leak when thumbnail extractor is called,
+  but library object is not properly initialized.
+ -Fixes in Imacon files unpacking.
+ -Fixes in Hasselblad .fff files unpacking.
 
 0.1.7
 ------------------------------------------------------------------------
-Updated to LibRaw to 0.6.3 : NEF processing code changed (some overflow control added).
-Updated to LibRaw to 0.6.2.
+Updated to LibRaw 0.6.3 : NEF processing code changed (some overflow control added).
+Updated to LibRaw 0.6.2.
 New cameras: Canon G10 & 5D Mk2, Leaf AFi 7, Leica D-LUX4, 
              Panasonic FX150 & G 1, Fujifilm IS Pro.
 
 0.1.6
 ------------------------------------------------------------------------
-Updated to LibRaw to 0.6.1.
+Updated to LibRaw 0.6.1.
 Ported to LibRaw 0.6.0 Api. Removed dcraw.c and DcrawBinary class.
 New cameras: Canon 50D, Sony A900, Nikon D90 & P6000, Panasonic LX3 FZ28.
 
--- branches/extragear/kde3/libs/libkdcraw/libraw/internal/dcraw_common.cpp #905572:905573
@@ -1,6 +1,6 @@
 /* 
    GENERATED FILE, DO NOT EDIT
-   Generated from dcraw/dcraw.c at Thu Dec 11 18:24:22 2008
+   Generated from dcraw/dcraw.c at Sun Jan  4 16:41:18 2009
    Look into original file (probably http://cybercom.net/~dcoffin/dcraw/dcraw.c)
    for copyright information.
 */
@@ -1462,6 +1462,7 @@
 
   if (!ljpeg_start (&jh, 0)) return;
   free (jh.row);
+  order = 0x4949;
   ph1_bits(-1);
   for (row=-top_margin; row < height; row++) {
     pred[0] = pred[1] = 0x8000;
@@ -1475,6 +1476,7 @@
 	diff = ph1_bits(len[i]);
 	if ((diff & (1 << (len[i]-1))) == 0)
 	  diff -= (1 << len[i]) - 1;
+	if (diff == 65535) diff = -32768;
 	pred[i] += diff;
 	if (row >= 0 && (unsigned)(col+i) < width)
 	  BAYER(row,col+i) = pred[i];
@@ -1511,7 +1513,7 @@
   }
 }
 
-#line 1808 "dcraw/dcraw.c"
+#line 1810 "dcraw/dcraw.c"
 void CLASS sinar_4shot_load_raw()
 {
   ushort *pixel;
@@ -2058,7 +2060,7 @@
 #endif
     jpeg_destroy_decompress (&cinfo);
 throw LIBRAW_EXCEPTION_DECODE_JPEG; 
-#line 2357 "dcraw/dcraw.c"
+#line 2359 "dcraw/dcraw.c"
   }
   buf = (*cinfo.mem->alloc_sarray)
 		((j_common_ptr) &cinfo, JPOOL_IMAGE, width*3, 1);
@@ -2566,7 +2568,7 @@
     smal_decode_segment (seg+i, holes);
   if (holes) fill_holes (holes);
 }
-#line 3562 "dcraw/dcraw.c"
+#line 3564 "dcraw/dcraw.c"
 
 /*
    Seach from the current directory up to the root looking for
@@ -2582,7 +2584,7 @@
 RUN_CALLBACK(LIBRAW_PROGRESS_BAD_PIXELS,0,2); 
   if (fname)
     fp = fopen (fname, "r");
-#line 3603 "dcraw/dcraw.c"
+#line 3605 "dcraw/dcraw.c"
   if (!fp) 
       {
 imgdata.process_warnings |= LIBRAW_WARN_NO_BADPIXELMAP; 
@@ -3873,7 +3875,7 @@
   }
 }
 
-#line 4897 "dcraw/dcraw.c"
+#line 4899 "dcraw/dcraw.c"
 void CLASS parse_makernote (int base, int uptag)
 {
   static const uchar xlat[2][256] = {
@@ -4359,7 +4361,7 @@
   }
 }
 
-#line 5386 "dcraw/dcraw.c"
+#line 5388 "dcraw/dcraw.c"
 int CLASS parse_tiff_ifd (int base)
 {
   unsigned entries, tag, type, len, plen=16, save;
@@ -4605,6 +4607,7 @@
 	ima_len = len;
 	break;
       case 46279:
+	if (!ima_len) break;
 	fseek (ifp, 78, SEEK_CUR);
 	raw_width  = get4();
 	raw_height = get4();
@@ -4939,7 +4942,7 @@
 void CLASS parse_external_jpeg()
 {
   char *file, *ext, *jname, *jfile, *jext;
-#line 5969 "dcraw/dcraw.c"
+#line 5972 "dcraw/dcraw.c"
   ext  = strrchr (ifname, '.');
   file = strrchr (ifname, '/');
   if (!file) file = strrchr (ifname, '\\');
@@ -4982,7 +4985,7 @@
 #endif
 } 
   free (jname);
-#line 6014 "dcraw/dcraw.c"
+#line 6017 "dcraw/dcraw.c"
 }
 
 /*
@@ -5423,7 +5426,7 @@
   data_offset  = (INT64) get4() + 8;
   data_offset += (INT64) get4() << 32;
 }
-#line 6559 "dcraw/dcraw.c"
+#line 6562 "dcraw/dcraw.c"
 void CLASS adobe_coeff (const char *p_make, const char *p_model) 
 {
   static const struct {
@@ -7251,7 +7254,7 @@
   if (strcmp (input, "embed"))
     hInProfile = cmsOpenProfileFromFile (input, "r");
   else if (profile_length) {
-#line 8394 "dcraw/dcraw.c"
+#line 8397 "dcraw/dcraw.c"
 hInProfile = cmsOpenProfileFromMem (imgdata.color.profile, profile_length); 
   } else
       {
@@ -7401,7 +7404,7 @@
 
 #endif
 memset(histogram,0,sizeof(int)*LIBRAW_HISTOGRAM_SIZE*4); 
-#line 8546 "dcraw/dcraw.c"
+#line 8549 "dcraw/dcraw.c"
   for (img=image[0], row=0; row < height; row++)
     for (col=0; col < width; col++, img+=4) {
       if (!raw_color) {
@@ -7542,7 +7545,7 @@
 }
 
 
-#line 8711 "dcraw/dcraw.c"
+#line 8714 "dcraw/dcraw.c"
 void CLASS tiff_set (ushort *ntag,
 	ushort tag, ushort type, int count, int val)
 {
--- branches/extragear/kde3/libs/libkdcraw/libraw/internal/defines.h #905572:905573
@@ -1,6 +1,6 @@
 /* 
    GENERATED FILE, DO NOT EDIT
-   Generated from dcraw/dcraw.c at Thu Dec 11 18:24:22 2008
+   Generated from dcraw/dcraw.c at Sun Jan  4 16:41:18 2009
    Look into original file (probably http://cybercom.net/~dcoffin/dcraw/dcraw.c)
    for copyright information.
 */
--- branches/extragear/kde3/libs/libkdcraw/libraw/internal/foveon.cpp #905572:905573
@@ -1,11 +1,11 @@
 /* 
    GENERATED FILE, DO NOT EDIT
-   Generated from dcraw/dcraw.c at Thu Dec 11 18:24:22 2008
+   Generated from dcraw/dcraw.c at Sun Jan  4 16:41:18 2009
    Look into original file (probably http://cybercom.net/~dcoffin/dcraw/dcraw.c)
    for copyright information.
 */
 
-#line 2866 "dcraw/dcraw.c"
+#line 2868 "dcraw/dcraw.c"
 #define CLASS LibRaw::
 #include "libraw/libraw_types.h"
 #define LIBRAW_LIBRARY_BUILD
@@ -16,7 +16,7 @@
 #define SRC_USES_CURVE
 #include "internal/var_defines.h"
 #define sget4(s) sget4((uchar *)s)
-#line 2878 "dcraw/dcraw.c"
+#line 2880 "dcraw/dcraw.c"
 
 /* RESTRICTED code starts here */
 
@@ -38,7 +38,7 @@
   cur = free_decode++;
   if (free_decode > first_decode+2048) {
 throw LIBRAW_EXCEPTION_DECODE_RAW; 
-#line 2903 "dcraw/dcraw.c"
+#line 2905 "dcraw/dcraw.c"
   }
   if (code)
     for (i=0; i < size; i++)
@@ -270,12 +270,12 @@
   return i < 0 ? -curve[1-i] : curve[1+i];
 }
 
-#line 3137 "dcraw/dcraw.c"
+#line 3139 "dcraw/dcraw.c"
 #ifdef image
 #undef image
 #endif
 #define image ((short(*)[4]) imgdata.image)
-#line 3144 "dcraw/dcraw.c"
+#line 3146 "dcraw/dcraw.c"
 
 void CLASS foveon_interpolate()
 {
@@ -692,7 +692,7 @@
 #undef image
 
 /* RESTRICTED code ends here */
-#line 6457 "dcraw/dcraw.c"
+#line 6460 "dcraw/dcraw.c"
 char * CLASS foveon_gets (int offset, char *str, int len)
 {
   int i;
--- branches/extragear/kde3/libs/libkdcraw/libraw/libraw/libraw_version.h #905572:905573
@@ -26,7 +26,7 @@
 
 #define LIBRAW_MAJOR_VERSION  0
 #define LIBRAW_MINOR_VERSION  6
-#define LIBRAW_PATCH_VERSION  3
+#define LIBRAW_PATCH_VERSION  5
 #define LIBRAW_VERSION_TAIL   Release
 
 #define _LIBRAW_VERSION_MAKE(a,b,c,d) #a"."#b"."#c"-"#d
** branches/extragear/kde3/libs/libkdcraw/libraw/samples/dcraw_half.cpp #property svn:eol-style
   + native
** branches/extragear/kde3/libs/libkdcraw/libraw/samples/half_mt.cpp #property svn:eol-style
   + native
** branches/extragear/kde3/libs/libkdcraw/libraw/samples/half_mt_win32.cpp #property svn:eol-style
   + native
--- branches/extragear/kde3/libs/libkdcraw/libraw/src/libraw_cxx.cpp #905572:905573
@@ -822,10 +822,10 @@
         return errno;
 
     if(!T.thumb)
-        {
-            fclose(tfp);
-            return LIBRAW_OUT_OF_ORDER_CALL;
-        }
+	{
+		fclose(tfp);
+        	return LIBRAW_OUT_OF_ORDER_CALL;
+	}
 
     try {
         switch (T.tformat)



More information about the Digikam-devel mailing list