From 7774a0a4c1628be2a499dd67293f39eba75e41b7 Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Tue, 28 Dec 2010 15:04:59 +0100 Subject: [PATCH] jscript: Pass HRESULTs instead of IDSs to throw_* functions. --- dlls/jscript/activex.c | 2 +- dlls/jscript/array.c | 10 ++-- dlls/jscript/bool.c | 6 +-- dlls/jscript/date.c | 120 ++++++++++++++++++++++++------------------------ dlls/jscript/engine.c | 18 ++++---- dlls/jscript/error.c | 42 +++++++++-------- dlls/jscript/function.c | 6 +-- dlls/jscript/global.c | 2 +- dlls/jscript/jscript.h | 53 +++++++++++++++++---- dlls/jscript/jsutils.c | 2 +- dlls/jscript/lex.c | 2 +- dlls/jscript/number.c | 8 ++-- dlls/jscript/object.c | 2 +- dlls/jscript/parser.y | 4 +- dlls/jscript/regexp.c | 4 +- dlls/jscript/string.c | 2 +- dlls/jscript/vbarray.c | 22 ++++----- 17 files changed, 170 insertions(+), 135 deletions(-) diff --git a/dlls/jscript/activex.c b/dlls/jscript/activex.c index 07a9dccc84c..c1f556b3315 100644 --- a/dlls/jscript/activex.c +++ b/dlls/jscript/activex.c @@ -172,7 +172,7 @@ static HRESULT ActiveXObject_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flag obj = create_activex_object(ctx, progid); SysFreeString(progid); if(!obj) - return throw_generic_error(ctx, ei, IDS_CREATE_OBJ_ERROR, NULL); + return throw_generic_error(ctx, ei, JS_E_CANNOT_CREATE_OBJ, NULL); hres = IUnknown_QueryInterface(obj, &IID_IDispatch, (void**)&disp); IUnknown_Release(obj); diff --git a/dlls/jscript/array.c b/dlls/jscript/array.c index 99127d49430..b8fabe1cab7 100644 --- a/dlls/jscript/array.c +++ b/dlls/jscript/array.c @@ -70,7 +70,7 @@ static HRESULT get_length(script_ctx_t *ctx, vdisp_t *vdisp, jsexcept_t *ei, jsd } if(!is_jsdisp(vdisp)) - return throw_type_error(ctx, ei, IDS_JSCRIPT_EXPECTED, NULL); + return throw_type_error(ctx, ei, JS_E_JSCRIPT_EXPECTED, NULL); hres = jsdisp_propget_name(vdisp->u.jsdisp, lengthW, &var, ei, NULL/*FIXME*/); if(FAILED(hres)) @@ -139,7 +139,7 @@ static HRESULT Array_length(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP len = floor(V_R8(&num)); if(len!=(DWORD)len) - return throw_range_error(ctx, ei, IDS_INVALID_LENGTH, NULL); + return throw_range_error(ctx, ei, JS_E_INVALID_LENGTH, NULL); for(i=len; ilength; i++) { hres = jsdisp_delete_idx(&This->dispex, i); @@ -975,7 +975,7 @@ static HRESULT Array_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DI array = array_this(jsthis); if(!array) - return throw_type_error(ctx, ei, IDS_ARRAY_EXPECTED, NULL); + return throw_type_error(ctx, ei, JS_E_ARRAY_EXPECTED, NULL); return array_join(ctx, &array->dispex, array->length, default_separatorW, retv, ei, sp); } @@ -1061,7 +1061,7 @@ static HRESULT Array_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISPP switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); case INVOKE_PROPERTYGET: return array_join(ctx, jsthis->u.jsdisp, array_from_vdisp(jsthis)->length, default_separatorW, retv, ei, sp); default: @@ -1138,7 +1138,7 @@ static HRESULT ArrayConstr_value(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, case DISPATCH_CONSTRUCT: { if(arg_cnt(dp) == 1 && V_VT((arg_var = get_arg(dp, 0))) == VT_I4) { if(V_I4(arg_var) < 0) - return throw_range_error(ctx, ei, IDS_INVALID_LENGTH, NULL); + return throw_range_error(ctx, ei, JS_E_INVALID_LENGTH, NULL); hres = create_array(ctx, V_I4(arg_var), &obj); if(FAILED(hres)) diff --git a/dlls/jscript/bool.c b/dlls/jscript/bool.c index 3e4349b3b9b..96ebdac9abd 100644 --- a/dlls/jscript/bool.c +++ b/dlls/jscript/bool.c @@ -49,7 +49,7 @@ static HRESULT Bool_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(bool = bool_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_BOOL, NULL); + return throw_type_error(ctx, ei, JS_E_BOOLEAN_EXPECTED, NULL); if(retv) { BSTR val; @@ -76,7 +76,7 @@ static HRESULT Bool_valueOf(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(bool = bool_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_BOOL, NULL); + return throw_type_error(ctx, ei, JS_E_BOOLEAN_EXPECTED, NULL); if(retv) { V_VT(retv) = VT_BOOL; @@ -93,7 +93,7 @@ static HRESULT Bool_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISPPA switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); default: FIXME("unimplemented flags %x\n", flags); return E_NOTIMPL; diff --git a/dlls/jscript/date.c b/dlls/jscript/date.c index e9542f813c0..7015e0f9677 100644 --- a/dlls/jscript/date.c +++ b/dlls/jscript/date.c @@ -610,7 +610,7 @@ static HRESULT Date_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); return dateobj_to_string(date, retv); } @@ -628,7 +628,7 @@ static HRESULT Date_toLocaleString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flag TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(isnan(date->time)) { if(retv) { @@ -669,7 +669,7 @@ static HRESULT Date_valueOf(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, date->time); @@ -703,7 +703,7 @@ static inline HRESULT create_utc_string(script_ctx_t *ctx, vdisp_t *jsthis, DWORD lcid_en, week_id, month_id; if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(isnan(date->time)) { if(retv) { @@ -898,7 +898,7 @@ static HRESULT Date_toDateString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DateInstance *date; if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); return dateobj_to_date_string(date, retv); } @@ -921,7 +921,7 @@ static HRESULT Date_toTimeString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(isnan(date->time)) { if(retv) { @@ -976,7 +976,7 @@ static HRESULT Date_toLocaleDateString(script_ctx_t *ctx, vdisp_t *jsthis, WORD TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(isnan(date->time)) { if(retv) { @@ -1019,7 +1019,7 @@ static HRESULT Date_toLocaleTimeString(script_ctx_t *ctx, vdisp_t *jsthis, WORD TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(isnan(date->time)) { if(retv) { @@ -1058,7 +1058,7 @@ static HRESULT Date_getTime(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, date->time); @@ -1074,7 +1074,7 @@ static HRESULT Date_getFullYear(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1093,7 +1093,7 @@ static HRESULT Date_getUTCFullYear(script_ctx_t *ctx, vdisp_t *jsthis, WORD flag TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, year_from_time(date->time)); @@ -1109,7 +1109,7 @@ static HRESULT Date_getMonth(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1128,7 +1128,7 @@ static HRESULT Date_getUTCMonth(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, month_from_time(date->time)); @@ -1144,7 +1144,7 @@ static HRESULT Date_getDate(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1163,7 +1163,7 @@ static HRESULT Date_getUTCDate(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, date_from_time(date->time)); @@ -1179,7 +1179,7 @@ static HRESULT Date_getDay(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISPP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1198,7 +1198,7 @@ static HRESULT Date_getUTCDay(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DI TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, week_day(date->time)); @@ -1214,7 +1214,7 @@ static HRESULT Date_getHours(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1233,7 +1233,7 @@ static HRESULT Date_getUTCHours(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, hour_from_time(date->time)); @@ -1249,7 +1249,7 @@ static HRESULT Date_getMinutes(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1268,7 +1268,7 @@ static HRESULT Date_getUTCMinutes(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, min_from_time(date->time)); @@ -1284,7 +1284,7 @@ static HRESULT Date_getSeconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1303,7 +1303,7 @@ static HRESULT Date_getUTCSeconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, sec_from_time(date->time)); @@ -1319,7 +1319,7 @@ static HRESULT Date_getMilliseconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD fla TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) { DOUBLE time = local_time(date->time, date); @@ -1338,7 +1338,7 @@ static HRESULT Date_getUTCMilliseconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, ms_from_time(date->time)); @@ -1354,7 +1354,7 @@ static HRESULT Date_getTimezoneOffset(script_ctx_t *ctx, vdisp_t *jsthis, WORD f TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(retv) num_set_val(retv, floor( @@ -1373,10 +1373,10 @@ static HRESULT Date_setTime(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); hres = to_number(ctx, get_arg(dp, 0), ei, &v); if(FAILED(hres)) @@ -1402,10 +1402,10 @@ static HRESULT Date_setMilliseconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD fla TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); hres = to_number(ctx, get_arg(dp, 0), ei, &v); if(FAILED(hres)) @@ -1434,10 +1434,10 @@ static HRESULT Date_setUTCMilliseconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); hres = to_number(ctx, get_arg(dp, 0), ei, &v); if(FAILED(hres)) @@ -1466,10 +1466,10 @@ static HRESULT Date_setSeconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = local_time(date->time, date); @@ -1508,10 +1508,10 @@ static HRESULT Date_setUTCSeconds(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = date->time; @@ -1550,10 +1550,10 @@ static HRESULT Date_setMinutes(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = local_time(date->time, date); @@ -1600,10 +1600,10 @@ static HRESULT Date_setUTCMinutes(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = date->time; @@ -1650,10 +1650,10 @@ static HRESULT Date_setHours(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = local_time(date->time, date); @@ -1707,10 +1707,10 @@ static HRESULT Date_setUTCHours(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = date->time; @@ -1764,10 +1764,10 @@ static HRESULT Date_setDate(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); hres = to_number(ctx, get_arg(dp, 0), ei, &v); if(FAILED(hres)) @@ -1796,10 +1796,10 @@ static HRESULT Date_setUTCDate(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); hres = to_number(ctx, get_arg(dp, 0), ei, &v); if(FAILED(hres)) @@ -1828,10 +1828,10 @@ static HRESULT Date_setMonth(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = local_time(date->time, date); @@ -1870,10 +1870,10 @@ static HRESULT Date_setUTCMonth(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = date->time; @@ -1912,10 +1912,10 @@ static HRESULT Date_setFullYear(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = local_time(date->time, date); @@ -1961,10 +1961,10 @@ static HRESULT Date_setUTCFullYear(script_ctx_t *ctx, vdisp_t *jsthis, WORD flag TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = date->time; @@ -2008,7 +2008,7 @@ static HRESULT Date_getYear(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); t = local_time(date->time, date); if(isnan(t)) { @@ -2036,10 +2036,10 @@ static HRESULT Date_setYear(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP TRACE("\n"); if(!(date = date_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_DATE, NULL); + return throw_type_error(ctx, ei, JS_E_DATE_EXPECTED, NULL); if(!arg_cnt(dp)) - return throw_type_error(ctx, ei, IDS_ARG_NOT_OPT, NULL); + return throw_type_error(ctx, ei, JS_E_MISSING_ARG, NULL); t = local_time(date->time, date); @@ -2073,7 +2073,7 @@ static HRESULT Date_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISPPA switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); default: FIXME("unimplemented flags %x\n", flags); return E_NOTIMPL; diff --git a/dlls/jscript/engine.c b/dlls/jscript/engine.c index c00d818e07e..42d676250a6 100644 --- a/dlls/jscript/engine.c +++ b/dlls/jscript/engine.c @@ -81,7 +81,7 @@ static HRESULT exprval_value(script_ctx_t *ctx, exprval_t *val, jsexcept_t *ei, case EXPRVAL_NAMEREF: break; case EXPRVAL_INVALID: - return throw_type_error(ctx, ei, IDS_UNDEFINED, val->u.identifier); + return throw_type_error(ctx, ei, JS_E_UNDEFINED_VARIABLE, val->u.identifier); } ERR("type %d\n", val->type); @@ -247,7 +247,7 @@ static HRESULT disp_get_id(script_ctx_t *ctx, IDispatch *disp, BSTR name, DWORD static HRESULT put_value(script_ctx_t *ctx, exprval_t *ref, VARIANT *v, jsexcept_t *ei) { if(ref->type != EXPRVAL_IDREF) - return throw_reference_error(ctx, ei, IDS_ILLEGAL_ASSIGN, NULL); + return throw_reference_error(ctx, ei, JS_E_ILLEGAL_ASSIGN, NULL); return disp_propput(ctx, ref->u.idref.disp, ref->u.idref.id, v, ei, NULL/*FIXME*/); } @@ -1560,13 +1560,13 @@ HRESULT new_expression_eval(script_ctx_t *ctx, expression_t *_expr, DWORD flags, if(V_VT(&constr) == VT_NULL) { VariantClear(&constr); - return throw_type_error(ctx, ei, IDS_OBJECT_EXPECTED, NULL); + return throw_type_error(ctx, ei, JS_E_OBJECT_EXPECTED, NULL); } else if(V_VT(&constr) != VT_DISPATCH) { VariantClear(&constr); - return throw_type_error(ctx, ei, IDS_UNSUPPORTED_ACTION, NULL); + return throw_type_error(ctx, ei, JS_E_INVALID_ACTION, NULL); } else if(!V_DISPATCH(&constr)) { VariantClear(&constr); - return throw_type_error(ctx, ei, IDS_NO_PROPERTY, NULL); + return throw_type_error(ctx, ei, JS_E_INVALID_PROPERTY, NULL); } hres = disp_call(ctx, V_DISPATCH(&constr), DISPID_VALUE, @@ -1604,14 +1604,14 @@ HRESULT call_expression_eval(script_ctx_t *ctx, expression_t *_expr, DWORD flags hres = disp_call(ctx, V_DISPATCH(&exprval.u.var), DISPID_VALUE, DISPATCH_METHOD, &dp, flags & EXPR_NOVAL ? NULL : &var, ei, NULL/*FIXME*/); else - hres = throw_type_error(ctx, ei, IDS_NO_PROPERTY, NULL); + hres = throw_type_error(ctx, ei, JS_E_INVALID_PROPERTY, NULL); break; case EXPRVAL_IDREF: hres = disp_call(ctx, exprval.u.idref.disp, exprval.u.idref.id, DISPATCH_METHOD, &dp, flags & EXPR_NOVAL ? NULL : &var, ei, NULL/*FIXME*/); break; case EXPRVAL_INVALID: - hres = throw_type_error(ctx, ei, IDS_OBJECT_EXPECTED, NULL); + hres = throw_type_error(ctx, ei, JS_E_OBJECT_EXPECTED, NULL); break; default: FIXME("unimplemented type %d\n", exprval.type); @@ -1996,7 +1996,7 @@ static HRESULT instanceof_eval(script_ctx_t *ctx, VARIANT *inst, VARIANT *objv, static const WCHAR prototypeW[] = {'p','r','o','t','o','t', 'y', 'p','e',0}; if(V_VT(objv) != VT_DISPATCH || !V_DISPATCH(objv)) - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); obj = iface_to_jsdisp((IUnknown*)V_DISPATCH(objv)); if(!obj) { @@ -2062,7 +2062,7 @@ static HRESULT in_eval(script_ctx_t *ctx, VARIANT *lval, VARIANT *obj, jsexcept_ HRESULT hres; if(V_VT(obj) != VT_DISPATCH || !V_DISPATCH(obj)) - return throw_type_error(ctx, ei, IDS_OBJECT_EXPECTED, NULL); + return throw_type_error(ctx, ei, JS_E_OBJECT_EXPECTED, NULL); hres = to_string(ctx, lval, ei, &str); if(FAILED(hres)) diff --git a/dlls/jscript/error.c b/dlls/jscript/error.c index 20911a89c45..21a8160b8d1 100644 --- a/dlls/jscript/error.c +++ b/dlls/jscript/error.c @@ -132,7 +132,7 @@ static HRESULT Error_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); default: FIXME("unimplemented flags %x\n", flags); return E_NOTIMPL; @@ -384,14 +384,17 @@ HRESULT init_error_constr(script_ctx_t *ctx, jsdisp_t *object_prototype) return S_OK; } -static HRESULT throw_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str, jsdisp_t *constr) +static HRESULT throw_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str, jsdisp_t *constr) { WCHAR buf[1024], *pos = NULL; jsdisp_t *err; HRESULT hres; + if(!is_jscript_error(error)) + return error; + buf[0] = '\0'; - LoadStringW(jscript_hinstance, id&0xFFFF, buf, sizeof(buf)/sizeof(WCHAR)); + LoadStringW(jscript_hinstance, HRESULT_CODE(error), buf, sizeof(buf)/sizeof(WCHAR)); if(str) pos = strchrW(buf, '|'); if(pos) { @@ -402,47 +405,46 @@ static HRESULT throw_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCH WARN("%s\n", debugstr_w(buf)); - id |= JSCRIPT_ERROR; - hres = create_error(ctx, constr, id, buf, &err); + hres = create_error(ctx, constr, error, buf, &err); if(FAILED(hres)) return hres; if(ei) var_set_jsdisp(&ei->var, err); - return id; + return error; } -HRESULT throw_generic_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_generic_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->error_constr); + return throw_error(ctx, ei, error, str, ctx->error_constr); } -HRESULT throw_range_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_range_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->range_error_constr); + return throw_error(ctx, ei, error, str, ctx->range_error_constr); } -HRESULT throw_reference_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_reference_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->reference_error_constr); + return throw_error(ctx, ei, error, str, ctx->reference_error_constr); } -HRESULT throw_regexp_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_regexp_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->regexp_error_constr); + return throw_error(ctx, ei, error, str, ctx->regexp_error_constr); } -HRESULT throw_syntax_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_syntax_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->syntax_error_constr); + return throw_error(ctx, ei, error, str, ctx->syntax_error_constr); } -HRESULT throw_type_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_type_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->type_error_constr); + return throw_error(ctx, ei, error, str, ctx->type_error_constr); } -HRESULT throw_uri_error(script_ctx_t *ctx, jsexcept_t *ei, UINT id, const WCHAR *str) +HRESULT throw_uri_error(script_ctx_t *ctx, jsexcept_t *ei, HRESULT error, const WCHAR *str) { - return throw_error(ctx, ei, id, str, ctx->uri_error_constr); + return throw_error(ctx, ei, error, str, ctx->uri_error_constr); } diff --git a/dlls/jscript/function.c b/dlls/jscript/function.c index 0fd6cff9b36..ff5364a4117 100644 --- a/dlls/jscript/function.c +++ b/dlls/jscript/function.c @@ -343,7 +343,7 @@ static HRESULT Function_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, TRACE("\n"); if(!(function = function_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); hres = function_to_string(function, &str); if(FAILED(hres)) @@ -407,7 +407,7 @@ static HRESULT Function_apply(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DI TRACE("\n"); if(!(function = function_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); argc = arg_cnt(dp); if(argc) { @@ -463,7 +463,7 @@ static HRESULT Function_call(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DIS TRACE("\n"); if(!(function = function_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); argc = arg_cnt(dp); if(argc) { diff --git a/dlls/jscript/global.c b/dlls/jscript/global.c index f9595774020..d1dddccd197 100644 --- a/dlls/jscript/global.c +++ b/dlls/jscript/global.c @@ -803,7 +803,7 @@ static HRESULT JSGlobal_encodeURI(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags i = WideCharToMultiByte(CP_UTF8, 0, ptr, 1, NULL, 0, NULL, NULL)*3; if(!i) { SysFreeString(str); - return throw_uri_error(ctx, ei, IDS_URI_INVALID_CHAR, NULL); + return throw_uri_error(ctx, ei, JS_E_INVALID_URI_CHAR, NULL); } len += i; diff --git a/dlls/jscript/jscript.h b/dlls/jscript/jscript.h index a14c2b44177..0ee13bd481a 100644 --- a/dlls/jscript/jscript.h +++ b/dlls/jscript/jscript.h @@ -33,8 +33,6 @@ #include "wine/unicode.h" #include "wine/list.h" -#define JSCRIPT_ERROR 0x800A0000 - typedef struct _script_ctx_t script_ctx_t; typedef struct _exec_ctx_t exec_ctx_t; typedef struct _dispex_prop_t dispex_prop_t; @@ -226,14 +224,14 @@ HRESULT create_builtin_function(script_ctx_t*,builtin_invoke_t,const WCHAR*,cons jsdisp_t*,jsdisp_t**); HRESULT Function_value(script_ctx_t*,vdisp_t*,WORD,DISPPARAMS*,VARIANT*,jsexcept_t*,IServiceProvider*); -HRESULT throw_eval_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_generic_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_range_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_reference_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_regexp_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_syntax_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_type_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); -HRESULT throw_uri_error(script_ctx_t*,jsexcept_t*,UINT,const WCHAR*); +HRESULT throw_eval_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_generic_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_range_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_reference_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_regexp_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_syntax_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_type_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); +HRESULT throw_uri_error(script_ctx_t*,jsexcept_t*,HRESULT,const WCHAR*); HRESULT create_object(script_ctx_t*,jsdisp_t*,jsdisp_t**); HRESULT create_math(script_ctx_t*,jsdisp_t**); @@ -434,6 +432,41 @@ static inline DWORD make_grfdex(script_ctx_t *ctx, DWORD flags) return (ctx->version << 28) | flags; } +#define FACILITY_JSCRIPT 10 + +#define MAKE_JSERROR(code) MAKE_HRESULT(SEVERITY_ERROR, FACILITY_JSCRIPT, code) + +#define JS_E_TO_PRIMITIVE MAKE_JSERROR(IDS_TO_PRIMITIVE) +#define JS_E_INVALIDARG MAKE_JSERROR(IDS_INVALID_CALL_ARG) +#define JS_E_SUBSCRIPT_OUT_OF_RANGE MAKE_JSERROR(IDS_SUBSCRIPT_OUT_OF_RANGE) +#define JS_E_CANNOT_CREATE_OBJ MAKE_JSERROR(IDS_CREATE_OBJ_ERROR) +#define JS_E_INVALID_PROPERTY MAKE_JSERROR(IDS_NO_PROPERTY) +#define JS_E_INVALID_ACTION MAKE_JSERROR(IDS_UNSUPPORTED_ACTION) +#define JS_E_MISSING_ARG MAKE_JSERROR(IDS_ARG_NOT_OPT) +#define JS_E_SYNTAX MAKE_JSERROR(IDS_SYNTAX_ERROR) +#define JS_E_MISSING_SEMICOLON MAKE_JSERROR(IDS_SEMICOLON) +#define JS_E_MISSING_LBRACKET MAKE_JSERROR(IDS_LBRACKET) +#define JS_E_MISSING_RBRACKET MAKE_JSERROR(IDS_RBRACKET) +#define JS_E_UNTERMINATED_STRING MAKE_JSERROR(IDS_UNTERMINATED_STR) +#define JS_E_FUNCTION_EXPECTED MAKE_JSERROR(IDS_NOT_FUNC) +#define JS_E_DATE_EXPECTED MAKE_JSERROR(IDS_NOT_DATE) +#define JS_E_NUMBER_EXPECTED MAKE_JSERROR(IDS_NOT_NUM) +#define JS_E_OBJECT_EXPECTED MAKE_JSERROR(IDS_OBJECT_EXPECTED) +#define JS_E_ILLEGAL_ASSIGN MAKE_JSERROR(IDS_ILLEGAL_ASSIGN) +#define JS_E_UNDEFINED_VARIABLE MAKE_JSERROR(IDS_UNDEFINED) +#define JS_E_BOOLEAN_EXPECTED MAKE_JSERROR(IDS_NOT_BOOL) +#define JS_E_VBARRAY_EXPECTED MAKE_JSERROR(IDS_NOT_VBARRAY) +#define JS_E_JSCRIPT_EXPECTED MAKE_JSERROR(IDS_JSCRIPT_EXPECTED) +#define JS_E_REGEXP_SYNTAX MAKE_JSERROR(IDS_REGEXP_SYNTAX_ERROR) +#define JS_E_INVALID_URI_CHAR MAKE_JSERROR(IDS_URI_INVALID_CHAR) +#define JS_E_INVALID_LENGTH MAKE_JSERROR(IDS_INVALID_LENGTH) +#define JS_E_ARRAY_EXPECTED MAKE_JSERROR(IDS_ARRAY_EXPECTED) + +static inline BOOL is_jscript_error(HRESULT hres) +{ + return HRESULT_FACILITY(hres) == FACILITY_JSCRIPT; +} + const char *debugstr_variant(const VARIANT*); HRESULT WINAPI JScriptFactory_CreateInstance(IClassFactory*,IUnknown*,REFIID,void**); diff --git a/dlls/jscript/jsutils.c b/dlls/jscript/jsutils.c index f1e15644383..341b9288144 100644 --- a/dlls/jscript/jsutils.c +++ b/dlls/jscript/jsutils.c @@ -252,7 +252,7 @@ HRESULT to_primitive(script_ctx_t *ctx, VARIANT *v, jsexcept_t *ei, VARIANT *ret jsdisp_release(jsdisp); WARN("failed\n"); - return throw_type_error(ctx, ei, IDS_TO_PRIMITIVE, NULL); + return throw_type_error(ctx, ei, JS_E_TO_PRIMITIVE, NULL); } default: FIXME("Unimplemented for vt %d\n", V_VT(v)); diff --git a/dlls/jscript/lex.c b/dlls/jscript/lex.c index 2e79db9878a..2db2d39c8aa 100644 --- a/dlls/jscript/lex.c +++ b/dlls/jscript/lex.c @@ -99,7 +99,7 @@ static const struct { static int lex_error(parser_ctx_t *ctx, HRESULT hres) { - ctx->hres = JSCRIPT_ERROR|hres; + ctx->hres = MAKE_JSERROR(hres); ctx->lexer_error = TRUE; return -1; } diff --git a/dlls/jscript/number.c b/dlls/jscript/number.c index eef284466fc..f95a19a8006 100644 --- a/dlls/jscript/number.c +++ b/dlls/jscript/number.c @@ -65,7 +65,7 @@ static HRESULT Number_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D TRACE("\n"); if(!(number = number_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_NUM, NULL); + return throw_type_error(ctx, ei, JS_E_NUMBER_EXPECTED, NULL); if(arg_cnt(dp)) { hres = to_int32(ctx, get_arg(dp, 0), ei, &radix); @@ -73,7 +73,7 @@ static HRESULT Number_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, D return hres; if(radix<2 || radix>36) - return throw_type_error(ctx, ei, IDS_INVALID_CALL_ARG, NULL); + return throw_type_error(ctx, ei, JS_E_INVALIDARG, NULL); } if(V_VT(&number->num) == VT_I4) @@ -215,7 +215,7 @@ static HRESULT Number_valueOf(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DI TRACE("\n"); if(!(number = number_this(jsthis))) - return throw_type_error(ctx, ei, IDS_NOT_NUM, NULL); + return throw_type_error(ctx, ei, JS_E_NUMBER_EXPECTED, NULL); if(retv) *retv = number->num; @@ -229,7 +229,7 @@ static HRESULT Number_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); case DISPATCH_PROPERTYGET: *retv = number->num; break; diff --git a/dlls/jscript/object.c b/dlls/jscript/object.c index 4aa4ce8a3d2..9f2e4d507dd 100644 --- a/dlls/jscript/object.c +++ b/dlls/jscript/object.c @@ -136,7 +136,7 @@ static HRESULT Object_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); case DISPATCH_PROPERTYGET: V_VT(retv) = VT_BSTR; V_BSTR(retv) = SysAllocString(default_valueW); diff --git a/dlls/jscript/parser.y b/dlls/jscript/parser.y index f062cd0117d..340d515f58a 100644 --- a/dlls/jscript/parser.y +++ b/dlls/jscript/parser.y @@ -1459,7 +1459,7 @@ static int parser_error(const char *str) static void set_error(parser_ctx_t *ctx, UINT error) { - ctx->hres = JSCRIPT_ERROR|error; + ctx->hres = MAKE_JSERROR(error); } static BOOL explicit_error(parser_ctx_t *ctx, void *obj, WCHAR next) @@ -1603,7 +1603,7 @@ HRESULT script_parse(script_ctx_t *ctx, const WCHAR *code, const WCHAR *delimite return E_OUTOFMEMORY; parser_ctx->ref = 1; - parser_ctx->hres = JSCRIPT_ERROR|IDS_SYNTAX_ERROR; + parser_ctx->hres = JS_E_SYNTAX; parser_ctx->is_html = delimiter && !strcmpiW(delimiter, html_tagW); parser_ctx->begin = heap_strdupW(code); diff --git a/dlls/jscript/regexp.c b/dlls/jscript/regexp.c index 8edfd97e2f9..b7fb660cc6b 100644 --- a/dlls/jscript/regexp.c +++ b/dlls/jscript/regexp.c @@ -3778,7 +3778,7 @@ static HRESULT RegExp_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); default: FIXME("unimplemented flags %x\n", flags); return E_NOTIMPL; @@ -4089,7 +4089,7 @@ static HRESULT RegExpConstr_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags if(is_class(jsdisp, JSCLASS_REGEXP)) { if(arg_cnt(dp) > 1 && V_VT(get_arg(dp,1)) != VT_EMPTY) { jsdisp_release(jsdisp); - return throw_regexp_error(ctx, ei, IDS_REGEXP_SYNTAX_ERROR, NULL); + return throw_regexp_error(ctx, ei, JS_E_REGEXP_SYNTAX, NULL); } if(retv) diff --git a/dlls/jscript/string.c b/dlls/jscript/string.c index 6febbc598ad..9c947a11380 100644 --- a/dlls/jscript/string.c +++ b/dlls/jscript/string.c @@ -1526,7 +1526,7 @@ static HRESULT String_value(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISP switch(flags) { case INVOKE_FUNC: - return throw_type_error(ctx, ei, IDS_NOT_FUNC, NULL); + return throw_type_error(ctx, ei, JS_E_FUNCTION_EXPECTED, NULL); case DISPATCH_PROPERTYGET: { BSTR str = SysAllocString(This->str); if(!str) diff --git a/dlls/jscript/vbarray.c b/dlls/jscript/vbarray.c index 8bdeb70f246..da17a07090f 100644 --- a/dlls/jscript/vbarray.c +++ b/dlls/jscript/vbarray.c @@ -53,7 +53,7 @@ static HRESULT VBArray_dimensions(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, vbarray = vbarray_this(vthis); if(!vbarray) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); if(retv) num_set_int(retv, SafeArrayGetDim(vbarray->safearray)); @@ -72,11 +72,11 @@ static HRESULT VBArray_getItem(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DI vbarray = vbarray_this(vthis); if(!vbarray) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); size = arg_cnt(dp); if(size < SafeArrayGetDim(vbarray->safearray)) - return throw_range_error(ctx, ei, IDS_SUBSCRIPT_OUT_OF_RANGE, NULL); + return throw_range_error(ctx, ei, JS_E_SUBSCRIPT_OUT_OF_RANGE, NULL); indexes = heap_alloc(sizeof(int)*size); if(!indexes) @@ -93,7 +93,7 @@ static HRESULT VBArray_getItem(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DI hres = SafeArrayGetElement(vbarray->safearray, indexes, (void*)&out); heap_free(indexes); if(hres == DISP_E_BADINDEX) - return throw_range_error(ctx, ei, IDS_SUBSCRIPT_OUT_OF_RANGE, NULL); + return throw_range_error(ctx, ei, JS_E_SUBSCRIPT_OUT_OF_RANGE, NULL); else if(FAILED(hres)) return hres; @@ -114,7 +114,7 @@ static HRESULT VBArray_lbound(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DIS vbarray = vbarray_this(vthis); if(!vbarray) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); if(arg_cnt(dp)) { hres = to_int32(ctx, get_arg(dp, 0), ei, &dim); @@ -125,7 +125,7 @@ static HRESULT VBArray_lbound(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DIS hres = SafeArrayGetLBound(vbarray->safearray, dim, &dim); if(hres == DISP_E_BADINDEX) - return throw_range_error(ctx, ei, IDS_SUBSCRIPT_OUT_OF_RANGE, NULL); + return throw_range_error(ctx, ei, JS_E_SUBSCRIPT_OUT_OF_RANGE, NULL); else if(FAILED(hres)) return hres; @@ -147,7 +147,7 @@ static HRESULT VBArray_toArray(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DI vbarray = vbarray_this(vthis); if(!vbarray) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); for(i=1; i<=SafeArrayGetDim(vbarray->safearray); i++) { SafeArrayGetLBound(vbarray->safearray, i, &lbound); @@ -193,7 +193,7 @@ static HRESULT VBArray_ubound(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DIS vbarray = vbarray_this(vthis); if(!vbarray) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); if(arg_cnt(dp)) { hres = to_int32(ctx, get_arg(dp, 0), ei, &dim); @@ -204,7 +204,7 @@ static HRESULT VBArray_ubound(script_ctx_t *ctx, vdisp_t *vthis, WORD flags, DIS hres = SafeArrayGetUBound(vbarray->safearray, dim, &dim); if(hres == DISP_E_BADINDEX) - return throw_range_error(ctx, ei, IDS_SUBSCRIPT_OUT_OF_RANGE, NULL); + return throw_range_error(ctx, ei, JS_E_SUBSCRIPT_OUT_OF_RANGE, NULL); else if(FAILED(hres)) return hres; @@ -287,14 +287,14 @@ static HRESULT VBArrayConstr_value(script_ctx_t *ctx, vdisp_t *vthis, WORD flags switch(flags) { case DISPATCH_METHOD: if(arg_cnt(dp)<1 || V_VT((arg = get_arg(dp, 0)))!=(VT_ARRAY|VT_VARIANT)) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); hres = VariantCopy(retv, arg); return hres; case DISPATCH_CONSTRUCT: if(arg_cnt(dp)<1 || V_VT((arg = get_arg(dp, 0)))!=(VT_ARRAY|VT_VARIANT)) - return throw_type_error(ctx, ei, IDS_NOT_VBARRAY, NULL); + return throw_type_error(ctx, ei, JS_E_VBARRAY_EXPECTED, NULL); hres = alloc_vbarray(ctx, NULL, &vbarray); if(FAILED(hres)) -- 2.11.4.GIT