I stumbled upon this bug by using ezpLanguageSwitcher to generate path for multiple siteaccesses.
Path generation loops on parent nodes, sets temporarily prioritized languages array to wanted locales, fetches path elements in db then resets proritized languages.
This works well until one of the parent nodes is not translated in any of the wanted locales : script breaks loop and returns found path elements without resetting prioritized languages, hence breaking further language related operations.
Proposed fix : https://github.com/ezsystems/ezpublish-legacy/pull/381
I believe this fix to be harmless, just resetting things straight but I wonder if loop break shouldn't return an empty path rather than a partial one when an ancestor node is not translated. I didn't go this far since I don't know if this method has anything to do with PathPrefix...