User tests: Successful: Unsuccessful:
You can see the issue here :
http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=28393
JComponentHelper::isEnabled('com_anycomponent') will aways return true if the component doesn't exists because in getComponent($option, $strict = false), $result->enabled was set to true for the default $strict = false value. (logic inversion).
2 ° commit) I think the $strict param complicates things for nothing, and is never used in any "core extension" call.
Moreover, I don't get why the OR is there, because it's independent from the frontend/backend.