This started about 10 days ago, I thought it was a server issue before realising it was a client one. Images in posts and comments fail to load with the following error
Unknown error
Failed to create image decoder with message 'invalid input'Input contained an error.
It affects 99% of images and I haven't been able to discrern a pattern in the images that load successfully. They have the same formats and URLs as the images that fail to load.
This started happening on 1.72.x, but updating to 1.73.0 has not helped.
I have looked at logcat and found that an error is generated that seems to be related to mime type detection, or heif format loading. Perhaps some changes were done to that code that don't agree with my phone's android 11 install. I haven't done any changes to my phone, and it worked before, so I assume it is a change in the app that triggered this behaviour.
Here is the relevant logcat output when trying to view a jpeg image:
I HeifDecoderImpl: HeifDecoder* createHeifDecoder()
I HeifDecoderImpl: HeifDecoderImpl::HeifDecoderImpl()
I MMParserExtractor: Created(0xb4000078c8a66000)
E MM_OSAL: FileSource::FileSource
E MM_OSAL: FileSource::FileSource m_bEveryThingOK 1
E MMParserExtractor: FileSourceWrapper::New Init returned -1004
E MMParserExtractor: readMetaData - FileSourceWrapper::New returned NULL
E MMParserExtractor: MMParserExtractor::countTracks no tracks
W Utils: did not find mime type
W ExtendedUtils: did not find mime type
W Utils: did not find mime type
W ExtendedUtils: did not find mime type
I HeifDecoderImpl: HeifDecoderImpl::~HeifDecoderImpl()
E ErrorUtils: Unknown throwable android.graphics.ImageDecoder.DecodeException
E ErrorUtils: android.graphics.ImageDecoder$DecodeException: Failed to create image decoder with message 'invalid input'Input contained an error.
E ErrorUtils: at android.graphics.ImageDecoder.nCreate(Native Method)
E ErrorUtils: at android.graphics.ImageDecoder.createFromFile(Unknown Source:19)
E ErrorUtils: at android.graphics.ImageDecoder.access$600(Unknown Source:0)
E ErrorUtils: at android.graphics.ImageDecoder$FileSource.createImageDecoder(Unknown Source:2)
E ErrorUtils: at android.graphics.ImageDecoder.decodeBitmapImpl(Unknown Source:1)
E ErrorUtils: at android.graphics.ImageDecoder.decodeBitmap(Unknown Source:2)
E ErrorUtils: at coil3.decode.b.a(r8-map-id-91472c89a467098dfb73dac40527f712a4c3af1dbf42a37f171cabd4500276b3:84)
E ErrorUtils: at coil3.intercept.a.a(r8-map-id-91472c89a467098dfb73dac40527f712a4c3af1dbf42a37f171cabd4500276b3:160)
E ErrorUtils: at coil3.intercept.EngineInterceptor$execute$executeResult$1.w(r8-map-id-91472c89a467098dfb73dac40527f712a4c3af1dbf42a37f171cabd4500276b3:57)
...
There's more obfuscated calls in the stack trace that I can include if helpful.
Basically the extensions are useful sometimes. Note that they have nothing to do with Microsoft other than being invented by them.