Sorry for having to start this discussion again... Sadly, it's not working right!
The problems it runs into are the same we have with drupal_alter() and the fact that themes aren't modules. Let me explain... Whenever we are on the backend (even when we are on the theme settings page of a particular theme) we will not invoke the alter hooks for that theme. Neither will we invoke the libraries info hook for themes as introduced by this patch.
This is because a) global $theme is always the theme we are actually rendering (not the theme we are displaying the theme settings for... there are actually other related issues/bugs in Core already that show this pretty well... anyways...) and b) even if we switched to global $theme_key it would not fix it because whenever we build the cache for the libraries and happen to be in the backend (other than the theme settings page) it will still ignore the front-end theme.
So... What we really need is for this lookup to be completely agnostic of the active theme. We have to loop over all themes and their base themes regardless of whether they are active or not. Also, we should add a $type key to the info array somewhere so we know whether the origin is a module or a theme... Or something else that gives us that particular information.
I am filing this as a bug report because even though it doesn't break anything it simply doesn't work the way it was supposed to work.
|PASSED: [[SimpleTest]]: [MySQL] 149 pass(es).|
|PASSED: [[SimpleTest]]: [MySQL] 135 pass(es).|
|PASSED: [[SimpleTest]]: [MySQL] 136 pass(es).|
|PASSED: [[SimpleTest]]: [MySQL] 144 pass(es).|