the js version of XPCNativeWrapper took a list of properties to expose and then you could call importXPCNative to add to that list. this was lost (resulting in exceptions) when the object was moved to C++.
OK, so I just looked. This function was sorta-almost an implementation detail of our old XPCNativeWrapper implementation... It didn't have a name starting with '_' unlike the really internal stuff, but it was also not implemented anywhere. So do we want to expose this on the new XPCNativeWrapper? Or just assume that no one is really using it? I see no hits on google for this other than http://developer.mozilla.org/en/docs/Talk:XPCNativeWrapper (which is what this bug is filed on), but that doesn't really mean it's unused...
I'm leaning towards updating the docs and not bothering to implement this in the new XPCNativeWrapper. Extra baggage for no real value IMO.
OK. I can do that.
i really used it!
I realize that. The point was, why? It wasn't documented, so wasn't really part of the API. The fact that JS has no information-hiding is not really an excuse. I've updated the docs to document this difference.
the wrapper yells and screams loudly if you ask it to wrap properties that don't exist, since i wasn't sure what an object was until i could safely interogate it, i wrapped it, interogated a few safe properties and then when i knew i needed another property that would be there, i asked them to be added.
I understand the use case... But you could just as easily have created a new wrapper, no?
i could have then, yes. but now i have distributed scripts which are stored in customer's computers which contain their data which i can no longer easily manipulate that use that function. i do have a way to work aroud this, but it kinda sucks.