nsXPCComponents::GetProperty(JSContext *cx, JSObject *obj, jsid id, jsval *vp, nsIXPConnectWrappedNative* wrapper, nsIXPCScriptable* arbitrary, JSBool* retval)
nsJSIID::GetProperty(JSContext *cx, JSObject *obj, jsid id, jsval *vp, nsIXPConnectWrappedNative* wrapper, nsIXPCScriptable* arbitrary, JSBool* retval)
nsXPCComponents::GetProperty(JSContext *cx, JSObject *obj,                             jsid id, jsval *vp,                             nsIXPConnectWrappedNative* wrapper,                             nsIXPCScriptable* arbitrary,                             JSBool* retval){    XPCContext* xpcc = nsXPConnect::GetContext(cx);    if(xpcc)    {        PRBool doResult = JS_FALSE;        nsresult res;        XPCJSRuntime* rt = xpcc->GetRuntime();        if(rt->GetStringID(XPCJSRuntime::IDX_LAST_RESULT) == id)        {            res = xpcc->GetLastResult();            doResult = JS_TRUE;        }        else if(rt->GetStringID(XPCJSRuntime::IDX_RETURN_CODE) == id)        {            res = xpcc->GetPendingResult();            doResult = JS_TRUE;        }        if(doResult)        {            if(!JS_NewNumberValue(cx, (jsdouble) res, vp))            {                JS_ReportOutOfMemory(cx);                return NS_ERROR_OUT_OF_MEMORY;            }            *retval = JS_TRUE;            return NS_OK;        }    }    return arbitrary->GetProperty(cx, obj, id, vp, wrapper, nsnull, retval);}