jscript: Use script LCID in *disp_propput* functions.
diff --git a/dlls/jscript/array.c b/dlls/jscript/array.c
index 84b2e49..b5039a7 100644
--- a/dlls/jscript/array.c
+++ b/dlls/jscript/array.c
@@ -60,13 +60,13 @@
     return hres;
 }
 
-static HRESULT set_jsdisp_length(DispatchEx *obj, LCID lcid, jsexcept_t *ei, DWORD length)
+static HRESULT set_jsdisp_length(DispatchEx *obj, jsexcept_t *ei, DWORD length)
 {
     VARIANT var;
 
     V_VT(&var) = VT_I4;
     V_I4(&var) = length;
-    return jsdisp_propput_name(obj, lengthW, lcid, &var, ei, NULL/*FIXME*/);
+    return jsdisp_propput_name(obj, lengthW, &var, ei, NULL/*FIXME*/);
 }
 
 static WCHAR *idx_to_str(DWORD idx, WCHAR *ptr)
@@ -142,7 +142,7 @@
         if(FAILED(hres))
             return hres;
 
-        hres = jsdisp_propput_idx(array, *len+i, lcid, &var, ei, caller);
+        hres = jsdisp_propput_idx(array, *len+i, &var, ei, caller);
         VariantClear(&var);
         if(FAILED(hres))
             return hres;
@@ -170,7 +170,7 @@
 
     V_VT(&var) = VT_DISPATCH;
     V_DISPATCH(&var) = obj;
-    return jsdisp_propput_idx(array, (*len)++, lcid, &var, ei, caller);
+    return jsdisp_propput_idx(array, (*len)++, &var, ei, caller);
 }
 
 static HRESULT Array_concat(DispatchEx *dispex, LCID lcid, WORD flags, DISPPARAMS *dp,
@@ -196,7 +196,7 @@
             if(V_VT(arg) == VT_DISPATCH)
                 hres = concat_obj(ret, V_DISPATCH(arg), &len, lcid, ei, caller);
             else
-                hres = jsdisp_propput_idx(ret, len++, lcid, arg, ei, caller);
+                hres = jsdisp_propput_idx(ret, len++, arg, ei, caller);
             if(FAILED(hres))
                 break;
         }
@@ -425,13 +425,13 @@
 
     n = arg_cnt(dp);
     for(i=0; i < n; i++) {
-        hres = jsdisp_propput_idx(dispex, length+i, lcid, get_arg(dp, i), ei, sp);
+        hres = jsdisp_propput_idx(dispex, length+i, get_arg(dp, i), ei, sp);
         if(FAILED(hres))
             return hres;
     }
 
     if(!is_class(dispex, JSCLASS_ARRAY)) {
-        hres = set_jsdisp_length(dispex, lcid, ei, length+n);
+        hres = set_jsdisp_length(dispex, ei, length+n);
         if(FAILED(hres))
             return hres;
     }
@@ -465,7 +465,7 @@
     }else {
         hres = get_jsdisp_length(dispex, lcid, ei, &length);
         if(SUCCEEDED(hres) && !length)
-            hres = set_jsdisp_length(dispex, lcid, ei, 0);
+            hres = set_jsdisp_length(dispex, ei, 0);
         if(FAILED(hres))
             return hres;
     }
@@ -487,13 +487,13 @@
         if(hres == DISP_E_UNKNOWNNAME)
             hres = jsdisp_delete_idx(dispex, i-1);
         else if(SUCCEEDED(hres))
-            hres = jsdisp_propput_idx(dispex, i-1, lcid, &v, ei, caller);
+            hres = jsdisp_propput_idx(dispex, i-1, &v, ei, caller);
     }
 
     if(SUCCEEDED(hres)) {
         hres = jsdisp_delete_idx(dispex, length-1);
         if(SUCCEEDED(hres))
-            hres = set_jsdisp_length(dispex, lcid, ei, length-1);
+            hres = set_jsdisp_length(dispex, ei, length-1);
     }
 
     if(SUCCEEDED(hres) && retv)
@@ -567,7 +567,7 @@
             continue;
 
         if(SUCCEEDED(hres))
-            hres = jsdisp_propput_idx(arr, idx-start, lcid, &v, ei, sp);
+            hres = jsdisp_propput_idx(arr, idx-start, &v, ei, sp);
 
         if(FAILED(hres)) {
             jsdisp_release(arr);
@@ -773,7 +773,7 @@
         }
 
         for(i=0; SUCCEEDED(hres) && i < length; i++)
-            hres = jsdisp_propput_idx(dispex, i, lcid, sorttab[i], ei, caller);
+            hres = jsdisp_propput_idx(dispex, i, sorttab[i], ei, caller);
     }
 
     if(vtab) {
@@ -857,14 +857,14 @@
             if(hres == DISP_E_UNKNOWNNAME)
                 hres = S_OK;
             else if(SUCCEEDED(hres))
-                hres = jsdisp_propput_idx(ret_array, i, lcid, &v, ei, caller);
+                hres = jsdisp_propput_idx(ret_array, i, &v, ei, caller);
         }
 
         if(SUCCEEDED(hres)) {
             V_VT(&v) = VT_I4;
             V_I4(&v) = delete_cnt;
 
-            hres = jsdisp_propput_name(ret_array, lengthW, lcid, &v, ei, caller);
+            hres = jsdisp_propput_name(ret_array, lengthW, &v, ei, caller);
         }
     }
 
@@ -874,7 +874,7 @@
             if(hres == DISP_E_UNKNOWNNAME)
                 hres = jsdisp_delete_idx(dispex, i+add_args);
             else if(SUCCEEDED(hres))
-                hres = jsdisp_propput_idx(dispex, i+add_args, lcid, &v, ei, caller);
+                hres = jsdisp_propput_idx(dispex, i+add_args, &v, ei, caller);
         }
 
         for(i=length; SUCCEEDED(hres) && i != length-delete_cnt+add_args; i--)
@@ -885,17 +885,17 @@
             if(hres == DISP_E_UNKNOWNNAME)
                 hres = jsdisp_delete_idx(dispex, i+add_args-1);
             else if(SUCCEEDED(hres))
-                hres = jsdisp_propput_idx(dispex, i+add_args-1, lcid, &v, ei, caller);
+                hres = jsdisp_propput_idx(dispex, i+add_args-1, &v, ei, caller);
         }
     }
 
     for(i=0; SUCCEEDED(hres) && i < add_args; i++)
-        hres = jsdisp_propput_idx(dispex, start+i, lcid, get_arg(dp,i+2), ei, caller);
+        hres = jsdisp_propput_idx(dispex, start+i, get_arg(dp,i+2), ei, caller);
 
     if(SUCCEEDED(hres)) {
         V_VT(&v) = VT_I4;
         V_I4(&v) = length-delete_cnt+add_args;
-        hres = jsdisp_propput_name(dispex, lengthW, lcid, &v, ei, caller);
+        hres = jsdisp_propput_name(dispex, lengthW, &v, ei, caller);
     }
 
     if(FAILED(hres)) {
@@ -972,7 +972,7 @@
             if(FAILED(hres))
                 return hres;
 
-            hres = jsdisp_propput_idx(dispex, i+argc, lcid, &var, ei, caller);
+            hres = jsdisp_propput_idx(dispex, i+argc, &var, ei, caller);
             VariantClear(&var);
         }else if(hres == DISP_E_UNKNOWNNAME) {
             hres = IDispatchEx_DeleteMemberByDispID(_IDispatchEx_(dispex), id);
@@ -983,13 +983,13 @@
     }
 
     for(i=0; i<argc; i++) {
-        hres = jsdisp_propput_idx(dispex, i, lcid, get_arg(dp,i), ei, caller);
+        hres = jsdisp_propput_idx(dispex, i, get_arg(dp,i), ei, caller);
         if(FAILED(hres))
             return hres;
     }
 
     if(!is_class(dispex, JSCLASS_ARRAY)) {
-        hres = set_jsdisp_length(dispex, lcid, ei, length+argc);
+        hres = set_jsdisp_length(dispex, ei, length+argc);
         if(FAILED(hres))
             return hres;
     }
@@ -1099,7 +1099,7 @@
             return hres;
 
         for(i=0; i < arg_cnt(dp); i++) {
-            hres = jsdisp_propput_idx(obj, i, lcid, get_arg(dp, i), ei, caller);
+            hres = jsdisp_propput_idx(obj, i, get_arg(dp, i), ei, caller);
             if(FAILED(hres))
                 break;
         }
diff --git a/dlls/jscript/dispex.c b/dlls/jscript/dispex.c
index 9ab509b..f2bbb40 100644
--- a/dlls/jscript/dispex.c
+++ b/dlls/jscript/dispex.c
@@ -327,7 +327,7 @@
     return hres;
 }
 
-static HRESULT prop_put(DispatchEx *This, dispex_prop_t *prop, LCID lcid, DISPPARAMS *dp,
+static HRESULT prop_put(DispatchEx *This, dispex_prop_t *prop, DISPPARAMS *dp,
         jsexcept_t *ei, IServiceProvider *caller)
 {
     DWORD i;
@@ -336,7 +336,7 @@
     switch(prop->type) {
     case PROP_BUILTIN:
         if(!(prop->flags & PROPF_METHOD))
-            return prop->u.p->invoke(This, lcid, DISPATCH_PROPERTYPUT, dp, NULL, ei, caller);
+            return prop->u.p->invoke(This, This->ctx->lcid, DISPATCH_PROPERTYPUT, dp, NULL, ei, caller);
     case PROP_PROTREF:
         prop->type = PROP_VARIANT;
         prop->flags = PROPF_ENUM;
@@ -559,7 +559,7 @@
         hres = prop_get(This, prop, pdp, pvarRes, &jsexcept, pspCaller);
         break;
     case DISPATCH_PROPERTYPUT:
-        hres = prop_put(This, prop, lcid, pdp, &jsexcept, pspCaller);
+        hres = prop_put(This, prop, pdp, &jsexcept, pspCaller);
         break;
     default:
         FIXME("Unimplemented flags %x\n", wFlags);
@@ -899,7 +899,7 @@
     return hres;
 }
 
-HRESULT jsdisp_propput_name(DispatchEx *obj, const WCHAR *name, LCID lcid, VARIANT *val, jsexcept_t *ei, IServiceProvider *caller)
+HRESULT jsdisp_propput_name(DispatchEx *obj, const WCHAR *name, VARIANT *val, jsexcept_t *ei, IServiceProvider *caller)
 {
     DISPID named_arg = DISPID_PROPERTYPUT;
     DISPPARAMS dp = {val, &named_arg, 1, 1};
@@ -910,20 +910,20 @@
     if(FAILED(hres))
         return hres;
 
-    return prop_put(obj, prop, lcid, &dp, ei, caller);
+    return prop_put(obj, prop, &dp, ei, caller);
 }
 
-HRESULT jsdisp_propput_idx(DispatchEx *obj, DWORD idx, LCID lcid, VARIANT *val, jsexcept_t *ei, IServiceProvider *caller)
+HRESULT jsdisp_propput_idx(DispatchEx *obj, DWORD idx, VARIANT *val, jsexcept_t *ei, IServiceProvider *caller)
 {
     WCHAR buf[12];
 
     static const WCHAR formatW[] = {'%','d',0};
 
     sprintfW(buf, formatW, idx);
-    return jsdisp_propput_name(obj, buf, lcid, val, ei, caller);
+    return jsdisp_propput_name(obj, buf, val, ei, caller);
 }
 
-HRESULT disp_propput(IDispatch *disp, DISPID id, LCID lcid, VARIANT *val, jsexcept_t *ei, IServiceProvider *caller)
+HRESULT disp_propput(script_ctx_t *ctx, IDispatch *disp, DISPID id, VARIANT *val, jsexcept_t *ei, IServiceProvider *caller)
 {
     DISPID dispid = DISPID_PROPERTYPUT;
     DISPPARAMS dp  = {val, &dispid, 1, 1};
@@ -937,7 +937,7 @@
 
         prop = get_prop(jsdisp, id);
         if(prop)
-            hres = prop_put(jsdisp, prop, lcid, &dp, ei, caller);
+            hres = prop_put(jsdisp, prop, &dp, ei, caller);
         else
             hres = DISP_E_MEMBERNOTFOUND;
 
@@ -950,10 +950,10 @@
         ULONG err = 0;
 
         TRACE("using IDispatch\n");
-        return IDispatch_Invoke(disp, id, &IID_NULL, DISPATCH_PROPERTYPUT, lcid, &dp, NULL, &ei->ei, &err);
+        return IDispatch_Invoke(disp, id, &IID_NULL, ctx->lcid, DISPATCH_PROPERTYPUT, &dp, NULL, &ei->ei, &err);
     }
 
-    hres = IDispatchEx_InvokeEx(dispex, id, lcid, DISPATCH_PROPERTYPUT, &dp, NULL, &ei->ei, caller);
+    hres = IDispatchEx_InvokeEx(dispex, id, ctx->lcid, DISPATCH_PROPERTYPUT, &dp, NULL, &ei->ei, caller);
 
     IDispatchEx_Release(dispex);
     return hres;
diff --git a/dlls/jscript/engine.c b/dlls/jscript/engine.c
index c49a358..1759994 100644
--- a/dlls/jscript/engine.c
+++ b/dlls/jscript/engine.c
@@ -242,7 +242,7 @@
     if(ref->type != EXPRVAL_IDREF)
         return throw_reference_error(ctx, ei, IDS_ILLEGAL_ASSIGN, NULL);
 
-    return disp_propput(ref->u.idref.disp, ref->u.idref.id, ctx->lcid, v, ei, NULL/*FIXME*/);
+    return disp_propput(ctx, ref->u.idref.disp, ref->u.idref.id, v, ei, NULL/*FIXME*/);
 }
 
 static inline BOOL is_null(const VARIANT *v)
@@ -416,7 +416,7 @@
 
         V_VT(&var) = VT_DISPATCH;
         V_DISPATCH(&var) = (IDispatch*)_IDispatchEx_(func_obj);
-        hres = jsdisp_propput_name(ctx->var_disp, func->expr->identifier, script->lcid, &var, ei, NULL);
+        hres = jsdisp_propput_name(ctx->var_disp, func->expr->identifier, &var, ei, NULL);
         jsdisp_release(func_obj);
         if(FAILED(hres))
             return hres;
@@ -616,7 +616,7 @@
         if(FAILED(hres))
             break;
 
-        hres = jsdisp_propput_name(ctx->var_disp, iter->identifier, ctx->parser->script->lcid, &val, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_name(ctx->var_disp, iter->identifier, &val, ei, NULL/*FIXME*/);
         VariantClear(&val);
         if(FAILED(hres))
             break;
@@ -1163,8 +1163,7 @@
 
     hres = create_dispex(ctx->parser->script, NULL, NULL, &var_disp);
     if(SUCCEEDED(hres)) {
-        hres = jsdisp_propput_name(var_disp, block->identifier, ctx->parser->script->lcid,
-                &ex, &rt->ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_name(var_disp, block->identifier, &ex, &rt->ei, NULL/*FIXME*/);
         if(SUCCEEDED(hres)) {
             hres = scope_push(ctx->scope_chain, var_disp, &ctx->scope_chain);
             if(SUCCEEDED(hres)) {
@@ -1697,7 +1696,7 @@
         if(FAILED(hres))
             break;
 
-        hres = jsdisp_propput_idx(array, i, ctx->parser->script->lcid, &val, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_idx(array, i, &val, ei, NULL/*FIXME*/);
         VariantClear(&val);
         if(FAILED(hres))
             break;
@@ -1748,7 +1747,7 @@
             hres = exprval_to_value(ctx->parser->script, &exprval, ei, &val);
             exprval_release(&exprval);
             if(SUCCEEDED(hres)) {
-                hres = jsdisp_propput_name(obj, name, ctx->parser->script->lcid, &val, ei, NULL/*FIXME*/);
+                hres = jsdisp_propput_name(obj, name, &val, ei, NULL/*FIXME*/);
                 VariantClear(&val);
             }
         }
diff --git a/dlls/jscript/error.c b/dlls/jscript/error.c
index bced477..1aeb867 100644
--- a/dlls/jscript/error.c
+++ b/dlls/jscript/error.c
@@ -380,7 +380,7 @@
             return E_OUTOFMEMORY;
         }
 
-        hres = jsdisp_propput_name(&err->dispex, nameW, ctx->lcid, &v, NULL/*FIXME*/, NULL/*FIXME*/);
+        hres = jsdisp_propput_name(&err->dispex, nameW, &v, NULL/*FIXME*/, NULL/*FIXME*/);
 
         if(SUCCEEDED(hres))
             hres = create_builtin_function(ctx, constr_val[i], names[i], NULL,
diff --git a/dlls/jscript/function.c b/dlls/jscript/function.c
index facb763..0f55862 100644
--- a/dlls/jscript/function.c
+++ b/dlls/jscript/function.c
@@ -74,7 +74,7 @@
     cargs = arg_cnt(dp);
 
     for(param = function->parameters; param; param = param->next) {
-        hres = jsdisp_propput_name(var_disp, param->identifier, lcid,
+        hres = jsdisp_propput_name(var_disp, param->identifier,
                 i < cargs ? get_arg(dp,i) : &var_empty, ei, caller);
         if(FAILED(hres))
             return hres;
@@ -121,7 +121,7 @@
     }
 
     for(i=0; i < arg_cnt(dp); i++) {
-        hres = jsdisp_propput_idx(args, i, lcid, get_arg(dp,i), ei, caller);
+        hres = jsdisp_propput_idx(args, i, get_arg(dp,i), ei, caller);
         if(FAILED(hres))
             break;
     }
@@ -129,12 +129,12 @@
     if(SUCCEEDED(hres)) {
         V_VT(&var) = VT_I4;
         V_I4(&var) = arg_cnt(dp);
-        hres = jsdisp_propput_name(args, lengthW, lcid, &var, ei, caller);
+        hres = jsdisp_propput_name(args, lengthW, &var, ei, caller);
 
         if(SUCCEEDED(hres)) {
             V_VT(&var) = VT_DISPATCH;
             V_DISPATCH(&var) = calee;
-            hres = jsdisp_propput_name(args, caleeW, lcid, &var, ei, caller);
+            hres = jsdisp_propput_name(args, caleeW, &var, ei, caller);
         }
     }
 
@@ -166,7 +166,7 @@
 
         V_VT(&var) = VT_DISPATCH;
         V_DISPATCH(&var) = (IDispatch*)_IDispatchEx_(arg_disp);
-        hres = jsdisp_propput_name(var_disp, argumentsW, lcid, &var, ei, caller);
+        hres = jsdisp_propput_name(var_disp, argumentsW, &var, ei, caller);
         jsdisp_release(arg_disp);
     }
 
@@ -618,7 +618,7 @@
     V_DISPATCH(&var) = (IDispatch*)_IDispatchEx_(prototype);
     memset(&jsexcept, 0, sizeof(jsexcept));
 
-    return jsdisp_propput_name(dispex, prototypeW, ctx->lcid, &var, &jsexcept, NULL/*FIXME*/);
+    return jsdisp_propput_name(dispex, prototypeW, &var, &jsexcept, NULL/*FIXME*/);
 }
 
 HRESULT create_builtin_function(script_ctx_t *ctx, builtin_invoke_t value_proc, const WCHAR *name,
diff --git a/dlls/jscript/global.c b/dlls/jscript/global.c
index 442da96..d4cb43b 100644
--- a/dlls/jscript/global.c
+++ b/dlls/jscript/global.c
@@ -887,7 +887,7 @@
 
     V_VT(&var) = VT_DISPATCH;
     V_DISPATCH(&var) = (IDispatch*)_IDispatchEx_(math);
-    hres = jsdisp_propput_name(ctx->global, MathW, ctx->lcid, &var, NULL/*FIXME*/, NULL/*FIXME*/);
+    hres = jsdisp_propput_name(ctx->global, MathW, &var, NULL/*FIXME*/, NULL/*FIXME*/);
     jsdisp_release(math);
 
     return hres;
diff --git a/dlls/jscript/jscript.h b/dlls/jscript/jscript.h
index 55d09d5..0d40063 100644
--- a/dlls/jscript/jscript.h
+++ b/dlls/jscript/jscript.h
@@ -135,10 +135,10 @@
 HRESULT jsdisp_call(DispatchEx*,DISPID,WORD,DISPPARAMS*,VARIANT*,jsexcept_t*,IServiceProvider*);
 HRESULT jsdisp_call_name(DispatchEx*,const WCHAR*,WORD,DISPPARAMS*,VARIANT*,jsexcept_t*,IServiceProvider*);
 HRESULT disp_propget(script_ctx_t*,IDispatch*,DISPID,VARIANT*,jsexcept_t*,IServiceProvider*);
-HRESULT disp_propput(IDispatch*,DISPID,LCID,VARIANT*,jsexcept_t*,IServiceProvider*);
+HRESULT disp_propput(script_ctx_t*,IDispatch*,DISPID,VARIANT*,jsexcept_t*,IServiceProvider*);
 HRESULT jsdisp_propget(DispatchEx*,DISPID,VARIANT*,jsexcept_t*,IServiceProvider*);
-HRESULT jsdisp_propput_name(DispatchEx*,const WCHAR*,LCID,VARIANT*,jsexcept_t*,IServiceProvider*);
-HRESULT jsdisp_propput_idx(DispatchEx*,DWORD,LCID,VARIANT*,jsexcept_t*,IServiceProvider*);
+HRESULT jsdisp_propput_name(DispatchEx*,const WCHAR*,VARIANT*,jsexcept_t*,IServiceProvider*);
+HRESULT jsdisp_propput_idx(DispatchEx*,DWORD,VARIANT*,jsexcept_t*,IServiceProvider*);
 HRESULT jsdisp_propget_name(DispatchEx*,LPCWSTR,VARIANT*,jsexcept_t*,IServiceProvider*);
 HRESULT jsdisp_propget_idx(DispatchEx*,DWORD,VARIANT*,jsexcept_t*,IServiceProvider*);
 HRESULT jsdisp_get_id(DispatchEx*,const WCHAR*,DWORD,DISPID*);
diff --git a/dlls/jscript/regexp.c b/dlls/jscript/regexp.c
index 28154da..84fd950 100644
--- a/dlls/jscript/regexp.c
+++ b/dlls/jscript/regexp.c
@@ -3520,7 +3520,7 @@
             break;
         }
 
-        hres = jsdisp_propput_idx(array, i+1, lcid, &var, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_idx(array, i+1, &var, ei, NULL/*FIXME*/);
         SysFreeString(V_BSTR(&var));
         if(FAILED(hres))
             break;
@@ -3529,13 +3529,13 @@
     while(SUCCEEDED(hres)) {
         V_VT(&var) = VT_I4;
         V_I4(&var) = result->str-input;
-        hres = jsdisp_propput_name(array, indexW, lcid, &var, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_name(array, indexW, &var, ei, NULL/*FIXME*/);
         if(FAILED(hres))
             break;
 
         V_VT(&var) = VT_BSTR;
         V_BSTR(&var) = input;
-        hres = jsdisp_propput_name(array, inputW, lcid, &var, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_name(array, inputW, &var, ei, NULL/*FIXME*/);
         if(FAILED(hres))
             break;
 
@@ -3544,7 +3544,7 @@
             hres = E_OUTOFMEMORY;
             break;
         }
-        hres = jsdisp_propput_name(array, zeroW, lcid, &var, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_name(array, zeroW, &var, ei, NULL/*FIXME*/);
         SysFreeString(V_BSTR(&var));
         break;
     }
diff --git a/dlls/jscript/string.c b/dlls/jscript/string.c
index 2a023b7..e0b900c 100644
--- a/dlls/jscript/string.c
+++ b/dlls/jscript/string.c
@@ -758,7 +758,7 @@
             break;
         }
 
-        hres = jsdisp_propput_idx(array, i, lcid, &var, ei, NULL/*FIXME*/);
+        hres = jsdisp_propput_idx(array, i, &var, ei, NULL/*FIXME*/);
         SysFreeString(V_BSTR(&var));
         if(FAILED(hres))
             break;
@@ -1313,7 +1313,7 @@
                 break;
             }
 
-            hres = jsdisp_propput_idx(array, i, lcid, &var, ei, sp);
+            hres = jsdisp_propput_idx(array, i, &var, ei, sp);
             SysFreeString(V_BSTR(&var));
             if(FAILED(hres))
                 break;
@@ -1335,7 +1335,7 @@
             V_BSTR(&var) = SysAllocStringLen(ptr, len);
 
             if(V_BSTR(&var)) {
-                hres = jsdisp_propput_idx(array, i, lcid, &var, ei, sp);
+                hres = jsdisp_propput_idx(array, i, &var, ei, sp);
                 SysFreeString(V_BSTR(&var));
             }else {
                 hres = E_OUTOFMEMORY;