void rm_delete_temp_image(char *temp_name) { MagickBooleanType okay = DeleteImageRegistry(temp_name+5); if (!okay) { rb_warn("DeleteImageRegistry failed for `%s'", temp_name); } }
// Assign registration id to reference void Magick::ImageRef::id ( const ssize_t id_ ) { if( _id > -1 ) { char id[MaxTextExtent]; sprintf(id,"%.20g",(double) _id); DeleteImageRegistry( id ); } _id = id_; }
// Assign registration id to reference void Magick::ImageRef::id ( const long id_ ) { if( _id > -1 ) { char id[MaxTextExtent]; sprintf(id,"%ld",_id); DeleteImageRegistry( id ); } _id = id_; }
// Destructor Magick::ImageRef::~ImageRef( void ) { // Unregister image (if still registered) if( _id > -1 ) { char id[MaxTextExtent]; sprintf(id,"%.20g",(double) _id); DeleteImageRegistry( id ); _id=-1; } // Deallocate image if ( _image ) { DestroyImageList( _image ); _image = 0; } // Deallocate image options delete _options; _options = 0; }