Currently if you pass MaterialManager::createTextureFromFile an incorrect file path it returns the default texture and if you pass it an empty string it special-case returns NULL. Other Polycode classes do not anticipate this inconsistency and can crash when this occurs.