On a rare occasion I encounter the following abort while rendering an image in 
an NSImage category.
The method (shown below) gets called frequently to render resources as 
grayscale.
Looks like the driver has issues but beyond that I am stuck.
Any ideas?

Thread 1 (main-thread)
#0      0x00007fff9972ef06 in __pthread_kill ()
#1      0x000000010183642d in pthread_kill ()
#2      0x00007fff8d3426e7 in abort ()
#3      0x00007fff9b3ace5c in gpusGenerateCrashLog ()
#4      0x00000001127259dc in 
___lldb_unnamed_function586$$AMDRadeonX4000GLDriver ()
#5      0x00007fff9b3ae204 in gpusSubmitDataBuffers ()
#6      0x0000000112762813 in 
___lldb_unnamed_function1027$$AMDRadeonX4000GLDriver ()
#7      0x0000000112778d37 in 
___lldb_unnamed_function1175$$AMDRadeonX4000GLDriver ()
#8      0x00007fff91a1f22f in glReadPixels_Exec ()
#9      0x00007fff91f0ceb9 in CI::GLContext::readback_bitmap(CI::Bitmap*, 
CI::swizzle_info) ()
#10     0x00007fff91dd43d9 in CI::image_get_cgimage(CI::Context*, CI::Image*, 
CGRect, CGColorSpace*, CI::PixelFormat) ()
#11     0x00007fff91db606a in -[CIContext 
createCGImage:fromRect:format:colorSpace:] ()
#12     0x00007fff91db476e in -[CIContext drawImage:inRect:fromRect:] ()
#13     0x00007fff9ba09801 in -[CIImage(NSAppKitAdditions) 
drawInRect:fromRect:operation:fraction:] ()
#14     0x00007fff9ba09914 in -[CIImage(NSAppKitAdditions) 
drawAtPoint:fromRect:operation:fraction:] ()
#15     0x0000000100028f47 in -[NSImage(Test) 
bp_grayscaleImageWithAlphaValue:saturationValue:brightnessValue:contrastValue:] 
at 

NSImage category:

- (NSImage *)bp_grayscaleImageWithAlphaValue:(CGFloat)alphaValue
                          saturationValue:(CGFloat)saturationValue
                          brightnessValue:(CGFloat)brightnessValue
                            contrastValue:(CGFloat)contrastValue
{
    NSSize size = [self size];
    NSRect bounds = { NSZeroPoint, size };
    NSImage *tintedImage = [[NSImage alloc] initWithSize:size];
    
    [tintedImage lockFocus];
    
    CIImage *image = [CIImage imageWithData:[self TIFFRepresentation]];
       
    CIFilter *colorFilter = [CIFilter filterWithName:@"CIColorControls"];
    [colorFilter setDefaults];
    [colorFilter setValue:image forKey:kCIInputImageKey];
    [colorFilter setValue:[NSNumber numberWithFloat:saturationValue]  
forKey:kCIInputSaturationKey];
    [colorFilter setValue:[NSNumber numberWithFloat:brightnessValue] 
forKey:kCIInputBrightnessKey];
    [colorFilter setValue:[NSNumber numberWithFloat:contrastValue] 
forKey:kCIInputContrastKey];
    
    CIImage *filterImage = [colorFilter valueForKey:kCIOutputImageKey];
    
    [filterImage drawAtPoint:NSZeroPoint // << this is the call site that 
eventually aborts
                    fromRect:bounds
                   operation:NSCompositeCopy
                    fraction:alphaValue]; 
    
    [tintedImage unlockFocus];
    
    return tintedImage;
}


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to