JSContext* current;
JSContext* currentCX; if(NS_SUCCEEDED(mContextStack->Peek(&currentCX))) {  if(cx == currentCX) mContextStack = nsnull; else { mContextStack->Push(cx);   } } }
AutoPushJSContext::AutoPushJSContext(JSContext *cx, nsXPConnect* xpc /*= nsnull*/){    NS_ASSERTION(cx, "pushing null cx");#ifdef DEBUG    mDebugCX = cx;#endif    mContextStack = nsXPConnect::GetContextStack(xpc);    if(mContextStack)    {        JSContext* current;        if(NS_FAILED(mContextStack->Peek(&current)) ||           current == cx ||           NS_FAILED(mContextStack->Push(cx)))        {            NS_RELEASE(mContextStack);        }    }}