Repro in playground:
https://www.babylonjs-playground.com/#EL1XMF#1
When creating a Babylon texture by providing a image UR that would cause failure, most likely due to CORS policy, the first texture loaded will error out correctly so it can be handled accordingly by the client program. However if the same URL is used to create texture again, it would not trigger the onError handler since the _getFromCache call would result in a hit and the texture will not be re-created, and the on error handler cannot run either.
In the playground the second texture will trigger success callback but in SharePoint spaces we are not able to see either handler to run.
I think the cache hit should not happen if the previous texture creation has failed, but due to a variety of async process during texture creation I am reporting this as a bug to the Babylon team to see what’s the expected behavior, when a URL would fail, but another texture need to be created before its callback.