The JSContext stack is an XPConnect construction. In particular, there are
situations where we want to manipulate it outside the lifetime of nsContentUtils
but within the lifetime of the stack itself. In order to do this cleanly, it's
helpful to use private XPConnect APIs. So the first step here is to move this into
js/src/xpconnect, so that we can take advantage of the stuff in xpcprivate.h.
--HG--
rename : content/base/src/nsCxPusher.cpp => js/xpconnect/src/nsCxPusher.cpp
rename : content/base/public/nsCxPusher.h => js/xpconnect/src/nsCxPusher.h
We want to put a JSAutoRequest into nsCxPusher, but that would involve
including jsapi.h in nsContentUtils.h, which we'd probably rather avoid doing.
Let's just bite the bullet and do this.