if (value == nsnull)
if (!value)
    nsSOAPPropertyBag::GetProperty(nsIXPConnectWrappedNative * wrapper,                                   JSContext * cx, JSObject * obj,                                   jsval id, jsval * vp, PRBool * _retval){  if (JSVAL_IS_STRING(id)) {    JSString *str = JSVAL_TO_STRING(id);    const PRUnichar *name = NS_REINTERPRET_CAST(const PRUnichar *,                                                JS_GetStringChars(str));    nsDependentString namestr(name);    nsStringKey nameKey(namestr);    nsCOMPtr < nsIVariant > value =        dont_AddRef(NS_STATIC_CAST                    (nsIVariant *, mProperties->Get(&nameKey)));    if (value == nsnull)      return NS_OK;    void *mark;    jsval *argv = JS_PushArguments(cx, &mark, "%iv", value.get());    *vp = *argv;    JS_PopArguments(cx, mark);  }  return NS_OK;}