Opened 12 years ago
Closed 8 years ago
#37491 closed defect (fixed)
libgeotiff: geotifcp and EXC_BAD_ACCESS
Reported by: | heikki.julkunen@… | Owned by: | stromnov (Andrey Stromnov) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.2 |
Keywords: | haspatch | Cc: | cooljeanius (Eric Gallager), khindenburg@… |
Port: | libgeotiff |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
geotifcp works great in Ubuntu 12.04
The tiff file is large (316Mb) so better not attach it, please let me know if you need it.
> port version Version: 2.1.2 > uname -a Darwin mini.local 12.2.1 Darwin Kernel Version 12.2.1: Thu Oct 18 12:13:47 PDT 2012; root:xnu-2050.20.9~1/RELEASE_X86_64 x86_64 geotifcp -g KSEA.orig.geo.hp KSEA.enh.tif KSEA.tif make: *** [KSEA.tif] Segmentation fault: 11 (gdb) set args -g KSEA.orig.geo.hp KSEA.enh.tif KSEA.tif (gdb) run Starting program: /opt/local/bin/geotifcp -g KSEA.orig.geo.hp KSEA.enh.tif KSEA.tif Reading symbols for shared libraries ++++++............................. done Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000018 0x00007fff937799e7 in memmove$VARIANT$sse42 ()
Have proposed fix here:
diff geotifcp.c.orig geotifcp.c 462c462 < { TIFFTAG_WHITEPOINT, 2, TIFF_RATIONAL }, --- > { TIFFTAG_WHITEPOINT, (uint16) -1, TIFF_RATIONAL }, 512,514d511 < } else if (p->count == 2) { < float floatv1, floatv2; < CopyField2(p->tag, floatv1, floatv2); 528a526
Change History (6)
comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Keywords: | haspatch added |
Owner: | changed from macports-tickets@… to stromnov@… |
Port: | libgeotiff added |
Priority: | High → Normal |
Summary: | geotifcp and EXC_BAD_ACCESS → libgeotiff: geotifcp and EXC_BAD_ACCESS |
comment:2 follow-up: 3 Changed 12 years ago by heikki.julkunen@…
Patch is after debugging crash. I tried emailing stromnov directly last week but never heard anything back, so no previous bug report.
comment:3 Changed 12 years ago by stromnov (Andrey Stromnov)
Replying to heikki.julkunen@…:
Patch is after debugging crash. I tried emailing stromnov directly last week but never heard anything back, so no previous bug report.
I apologize for the delay. I was very busy last week.
Your patch looks very strange: current geotifcp.c contains
{ TIFFTAG_WHITEPOINT, 1, TIFF_RATIONAL }
, but not
{ TIFFTAG_WHITEPOINT, 2, TIFF_RATIONAL },
and TIFF_RATIONAL
case section doesn't contains if (p->count == 2)
expression.
comment:4 Changed 12 years ago by heikki.julkunen@…
My bad on the source&diff - instead of using the darwin ports version seems like I picked up the ubuntu source from here: http://archive.ubuntu.com/ubuntu/pool/universe/libg/libgeotiff-dfsg/libgeotiff-dfsg_1.2.4.orig.tar.gz
Sorry for the confusion.
diff geotifcp.c.orig geotifcp.c 462c462 < { TIFFTAG_WHITEPOINT, 1, TIFF_RATIONAL }, ---
{ TIFFTAG_WHITEPOINT, (uint16) -1, TIFF_RATIONAL },
comment:6 Changed 8 years ago by kurthindenburg (Kurt Hindenburg)
Cc: | khindenburg@… added |
---|---|
Resolution: | → fixed |
Status: | new → closed |
I believe this was fixed a while ago.
Did this patch come from the developers of libgeotiff, or if not, have you already informed them about it and have they agreed that this is the correct fix? Is there an upstream bug report about this problem?