nsCvrtJSValToStr(b0, cx, argv[0]); nsCvrtJSValToStr(b1, cx, argv[1]);
ConvertJSValToStr(b0, cx, argv[0]); ConvertJSValToStr(b1, cx, argv[1]);
WinRegCreateKey(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval){  nsWinReg *nativeThis = (nsWinReg*)JS_GetPrivate(cx, obj);  PRInt32 nativeRet;  nsAutoString b0;  nsAutoString b1;  *rval = JSVAL_NULL;  // If there's no private data, this must be the prototype, so ignore  if(nsnull == nativeThis)  {    return JS_TRUE;  }  if(argc >= 2)                               {    //  public int createKey ( String subKey,    //                         String className);    nsCvrtJSValToStr(b0, cx, argv[0]);    nsCvrtJSValToStr(b1, cx, argv[1]);    if(NS_OK != nativeThis->createKey(b0, b1, &nativeRet))    {      return JS_FALSE;    }    *rval = INT_TO_JSVAL(nativeRet);  }  else  {    JS_ReportError(cx, "WinReg.CreateKey() parameters error");    return JS_FALSE;  }  return JS_TRUE;}