Ok, no point in holding up the release for that problem saving PNGs.
Looks to me like it's a Magick problem.
I looked over the DX Magick code, and nothing jumps out. When the
save fails fails, Magick's failure reason is "Memory allocation failed"
(attached is a cleanup patch that prints this message in the DX message
window BTW). The error is a bit ridiculous considering the image is only
3MB and at that point dxexec has only grown to 200MB / 1500MB.
However, I can take one of those complex images that fails, and
instead save it in GIF,TIF,BMP,RGB,TGA,JPG,XPM,..., all of which use the
same DX code path, and it'll save fine, as long as I don't try to save in
PNG first.
I'll fiddle with Magick here later. Let's get on with 4.2!
Randy
--
Randall Hopper (mailto:[EMAIL PROTECTED])
Lockheed Martin Operation Support
EPA Scientific Visualization Center
US EPA N127-01; RTP, NC 27711
--- src/exec/dxmods/ORIG/_im_image.c Fri May 17 08:34:29 2002
+++ src/exec/dxmods/_im_image.c Fri May 17 12:03:44 2002
@@ -405,6 +405,11 @@
}
image=ConstituteImage(nx,ny,"RGB",imcolortype,(void*)copycolors,&_dxd_exception_info);
+ if (!image) {
+ DestroyImageInfo(image_info);
+ DXFree(copycolors);
+ DXErrorReturn( ERROR_INTERNAL , "out of memory allocating Image
_im_image.c");
+ }
/*
Write the image with ImageMagick
@@ -419,7 +424,9 @@
err = WriteImage(image_info,image);
if(err == 0) {
- DXSetError(ERROR_INTERNAL, image->exception.description);
+ DXSetError(ERROR_INTERNAL, "reason = %s, description = %s",
+ image->exception.reason,
+ image->exception.description);
}
DXFree(copycolors);