Empty PNG description using CGImageSourceCopyPropertiesAtIndex

Hi all,


My app worked in iOS 10.3.3 and after the update to iOS 11 I'm unable to get the metadata information (description field) of a PNG file using the CGImageSourceCopyPropertiesAtIndex function. The description field of the metadata (PNG file) is empty. I already reported the bug to apple but I've not answer since september 27/2017.


The following code worked on iOS 10.3.3 (not working in iOS 11, iOS 11.0.1, iOS 11.0.2, iOS 11.0.3, iOS 11.1)


NSString pngFile = @"Demo.PNG" // Demo.PNG = any PNG file with description


CGImageSourceRef imgSrc = CGImageSourceCreateWithURL( (__bridge CFURLRef)[NSURL fileURLWithPath:pngFile], NULL);

NSDictionary *metaDataDict = CFBridgingRelease(CGImageSourceCopyPropertiesAtIndex(imgSrc, 0, nil));

if (imgSrc!=nil) {

NSDictionary *metaDataDict = (__bridge NSDictionary *)(CGImageSourceCopyPropertiesAtIndex(imgSrc, 0, nil));

// Release imgSrc

CFRelease(imgSrc);

}


Expected Results:

Printing description of metaDataDict:

{

ColorModel = RGB;

DPIHeight = 96;

DPIWidth = 96;

Depth = 8;

HasAlpha = 1;

PixelHeight = 904;

PixelWidth = 1280;

"{PNG}" = {

Description = "sWdgekOGVqW1mjei4lOb+O0Fs+VarqpZjXsJ1IrqTgDCMs7xYvFmoTETP9QgtmggqadPLz7hUKeye40CdpOQFvmyQ2ctNNh8ESMVT+MknlE14E2IOaTWVNSJmmLnSOWI8xo10JemAtyc2wBrdibAjkBOoFXvz50ovQYz74cL1Oskk7Oxm9EBvVxT8L9rE1PJUdJRayhBmSZZVNzWBOx3cW8/L1f2RrE+I4Xcd0zAqmyJt++MwoUGkX5rSj7GjIwGJlwDUISNBh5Nz6lRUVXBZmAzjB08fIXuUiOvGddTLUsTnAmzpbR1uqjh91muZV7aRUhqa/zeZDzfZ7+nxs+cj9/+6/lfFLSko5h3CN22CE6Ypky0Bgwf3imiHFTDuSEbMhXJ9T5uPSMrUSU2s1nmxMZNB3QLhnojzhWMVlqZ/LFXnG2Gh6BcWgLsbi8ZQ1+MYAZ+ijfk2fk2Gx7MTtJ+PHCH6WuknvvuuqTPhGhoqE+X/U0n719GmwKxa8SXwiIqoJZwmGwSyQCOS5McrGZMXvxHDp+dquT3+fGUD7OqywqHk6+OUpfnNfhgLk1EHS4l";

InterlaceType = 0;

XPixelsPerMeter = 3779;

YPixelsPerMeter = 3779;

};

"{TIFF}" = {

ImageDescription = "sWdgekOGVqW1mjei4lOb+O0Fs+VarqpZjXsJ1IrqTgDCMs7xYvFmoTETP9QgtmggqadPLz7hUKeye40CdpOQFvmyQ2ctNNh8ESMVT+MknlE14E2IOaTWVNSJmmLnSOWI8xo10JemAtyc2wBrdibAjkBOoFXvz50ovQYz74cL1Oskk7Oxm9EBvVxT8L9rE1PJUdJRayhBmSZZVNzWBOx3cW8/L1f2RrE+I4Xcd0zAqmyJt++MwoUGkX5rSj7GjIwGJlwDUISNBh5Nz6lRUVXBZmAzjB08fIXuUiOvGddTLUsTnAmzpbR1uqjh91muZV7aRUhqa/zeZDzfZ7+nxs+cj9/+6/lfFLSko5h3CN22CE6Ypky0Bgwf3imiHFTDuSEbMhXJ9T5uPSMrUSU2s1nmxMZNB3QLhnojzhWMVlqZ/LFXnG2Gh6BcWgLsbi8ZQ1+MYAZ+ijfk2fk2Gx7MTtJ+PHCH6WuknvvuuqTPhGhoqE+X/U0n719GmwKxa8SXwiIqoJZwmGwSyQCOS5McrGZMXvxHDp+dquT3+fGUD7OqywqHk6+OUpfnNfhgLk1EHS4l";

};

}



Actual Results:


Printing description of metaDataDict:

{

ColorModel = RGB;

DPIHeight = 96;

DPIWidth = 96;

Depth = 8;

HasAlpha = 1;

PixelHeight = 904;

PixelWidth = 1280;

"{PNG}" = {

Description = "";

InterlaceType = 0;

XPixelsPerMeter = 3779;

YPixelsPerMeter = 3779;

};

"{TIFF}" = {

ImageDescription = "";

};

}

Empty PNG description using CGImageSourceCopyPropertiesAtIndex
 
 
Q