PHP Fatal error: Call to undefined method JException::isSite() in /libraries/cms/menu/site.php on line 90
For what it's worth, I don't think the change in 6632155 could be directly applied to CMS. JFactory::getApplication supports only one application instance, whereas JApplication:getInstance supports multiple named application instances. Whilst most calls from either function in the CMS don't specify a Client name, the two calls in JMenuSite do specify the client name. The explicit addition of Client name in these calls was added in 10f0a95f (#27158) and appear to have been necessary as it was being called from the backend.
So, we're going to run into the same issue if we have a backend menu manager it sounds like. JFactory really should support instantiating another application instance and storing loaded instances in an array; then again, getApplication needs looking at if it's going to be used without the legacy JApplication, but that's another argument for another day.
Interesting.. I believe that joomla/joomla-cms@10f0a95 band-aids a(nother) CMS flaw of objects incorrectly depending on each other..
And yes, JFactory should support multiple applications.
Let's see what happens when we come to routing...
I'd mildly argue that the site menu, router, and pathway classes depending on JSite isn't necessarily a bad thing, just makes it harder to reuse that code outside their intended purpose (or application).
So... I believe this has been fixed in 6632155, correctly marked in library_changes.txt but seems to be currently reverted to the cms version...
I'm not really sure how to handle this. A pull request including a tracker item on joomlacode.org would be necessary. Not sure what to put into "steps to reproduce" ;)