diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-09-25 10:09:26 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-28 13:33:08 +0200 |
commit | 0f2cf9074d4f0220f5c707eed478f99334814789 (patch) | |
tree | 685ea2295b8728b3545523e2625a4cf65f39b9ee /src/qml/qml/qqmllocale.cpp | |
parent | 1ef957834bf9040ccd001fa6d80e483b9b21452c (diff) |
Fix CallContext to not hold arguments on the C stack anymore
Change-Id: I35f46cce4f243d4b8b2bac9244f8fc26836f413b
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/qqmllocale.cpp')
-rw-r--r-- | src/qml/qml/qqmllocale.cpp | 212 |
1 files changed, 106 insertions, 106 deletions
diff --git a/src/qml/qml/qqmllocale.cpp b/src/qml/qml/qqmllocale.cpp index 7610b6a9d9..400ef9f940 100644 --- a/src/qml/qml/qqmllocale.cpp +++ b/src/qml/qml/qqmllocale.cpp @@ -68,7 +68,7 @@ public: QLocale locale; static QLocale &getThisLocale(QV4::SimpleCallContext *ctx) { - QQmlLocaleData *thisObject = ctx->thisObject.asObject()->as<QQmlLocaleData>(); + QQmlLocaleData *thisObject = ctx->callData->thisObject.asObject()->as<QQmlLocaleData>(); if (!thisObject) ctx->throwTypeError(); return thisObject->locale; @@ -137,36 +137,36 @@ void QQmlDateExtension::registerExtension(QV4::ExecutionEngine *engine) QV4::ReturnedValue QQmlDateExtension::method_toLocaleString(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount > 2) + if (ctx->callData->argc > 2) return QV4::DatePrototype::method_toLocaleString(ctx); QV4::Scope scope(ctx); - QV4::DateObject *date = ctx->thisObject.asDateObject(); + QV4::DateObject *date = ctx->callData->thisObject.asDateObject(); if (!date) return QV4::DatePrototype::method_toLocaleString(ctx); QDateTime dt = date->toQDateTime(); - if (ctx->argumentCount == 0) { + if (ctx->callData->argc == 0) { // Use QLocale for standard toLocaleString() function QLocale locale; return QV4::Value::fromString(ctx, locale.toString(dt)).asReturnedValue(); } - if (!isLocaleObject(ctx->arguments[0])) + if (!isLocaleObject(ctx->callData->args[0])) return QV4::DatePrototype::method_toLocaleString(ctx); // Use the default Date toLocaleString() - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QLocale::FormatType enumFormat = QLocale::LongFormat; QString formattedDt; - if (ctx->argumentCount == 2) { - if (ctx->arguments[1].isString()) { - QString format = ctx->arguments[1].stringValue()->toQString(); + if (ctx->callData->argc == 2) { + if (ctx->callData->args[1].isString()) { + QString format = ctx->callData->args[1].stringValue()->toQString(); formattedDt = r->locale.toString(dt, format); - } else if (ctx->arguments[1].isNumber()) { - quint32 intFormat = ctx->arguments[1].toNumber(); + } else if (ctx->callData->args[1].isNumber()) { + quint32 intFormat = ctx->callData->args[1].toNumber(); QLocale::FormatType format = QLocale::FormatType(intFormat); formattedDt = r->locale.toString(dt, format); } else { @@ -181,37 +181,37 @@ QV4::ReturnedValue QQmlDateExtension::method_toLocaleString(QV4::SimpleCallConte QV4::ReturnedValue QQmlDateExtension::method_toLocaleTimeString(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount > 2) + if (ctx->callData->argc > 2) return QV4::DatePrototype::method_toLocaleTimeString(ctx); QV4::Scope scope(ctx); - QV4::DateObject *date = ctx->thisObject.asDateObject(); + QV4::DateObject *date = ctx->callData->thisObject.asDateObject(); if (!date) return QV4::DatePrototype::method_toLocaleTimeString(ctx); QDateTime dt = date->toQDateTime(); QTime time = dt.time(); - if (ctx->argumentCount == 0) { + if (ctx->callData->argc == 0) { // Use QLocale for standard toLocaleString() function QLocale locale; return QV4::Value::fromString(ctx, locale.toString(time)).asReturnedValue(); } - if (!isLocaleObject(ctx->arguments[0])) + if (!isLocaleObject(ctx->callData->args[0])) return QV4::DatePrototype::method_toLocaleTimeString(ctx); // Use the default Date toLocaleTimeString() - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QLocale::FormatType enumFormat = QLocale::LongFormat; QString formattedTime; - if (ctx->argumentCount == 2) { - if (ctx->arguments[1].isString()) { - QString format = ctx->arguments[1].stringValue()->toQString(); + if (ctx->callData->argc == 2) { + if (ctx->callData->args[1].isString()) { + QString format = ctx->callData->args[1].stringValue()->toQString(); formattedTime = r->locale.toString(time, format); - } else if (ctx->arguments[1].isNumber()) { - quint32 intFormat = ctx->arguments[1].toNumber(); + } else if (ctx->callData->args[1].isNumber()) { + quint32 intFormat = ctx->callData->args[1].toNumber(); QLocale::FormatType format = QLocale::FormatType(intFormat); formattedTime = r->locale.toString(time, format); } else { @@ -226,37 +226,37 @@ QV4::ReturnedValue QQmlDateExtension::method_toLocaleTimeString(QV4::SimpleCallC QV4::ReturnedValue QQmlDateExtension::method_toLocaleDateString(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount > 2) + if (ctx->callData->argc > 2) return QV4::DatePrototype::method_toLocaleDateString(ctx); QV4::Scope scope(ctx); - QV4::DateObject *dateObj = ctx->thisObject.asDateObject(); + QV4::DateObject *dateObj = ctx->callData->thisObject.asDateObject(); if (!dateObj) return QV4::DatePrototype::method_toLocaleDateString(ctx); QDateTime dt = dateObj->toQDateTime(); QDate date = dt.date(); - if (ctx->argumentCount == 0) { + if (ctx->callData->argc == 0) { // Use QLocale for standard toLocaleString() function QLocale locale; return QV4::Value::fromString(ctx, locale.toString(date)).asReturnedValue(); } - if (!isLocaleObject(ctx->arguments[0])) + if (!isLocaleObject(ctx->callData->args[0])) return QV4::DatePrototype::method_toLocaleDateString(ctx); // Use the default Date toLocaleDateString() - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QLocale::FormatType enumFormat = QLocale::LongFormat; QString formattedDate; - if (ctx->argumentCount == 2) { - if (ctx->arguments[1].isString()) { - QString format = ctx->arguments[1].stringValue()->toQString(); + if (ctx->callData->argc == 2) { + if (ctx->callData->args[1].isString()) { + QString format = ctx->callData->args[1].stringValue()->toQString(); formattedDate = r->locale.toString(date, format); - } else if (ctx->arguments[1].isNumber()) { - quint32 intFormat = ctx->arguments[1].toNumber(); + } else if (ctx->callData->args[1].isNumber()) { + quint32 intFormat = ctx->callData->args[1].toNumber(); QLocale::FormatType format = QLocale::FormatType(intFormat); formattedDate = r->locale.toString(date, format); } else { @@ -272,29 +272,29 @@ QV4::ReturnedValue QQmlDateExtension::method_toLocaleDateString(QV4::SimpleCallC QV4::ReturnedValue QQmlDateExtension::method_fromLocaleString(QV4::SimpleCallContext *ctx) { QV4::ExecutionEngine * const engine = ctx->engine; - if (ctx->argumentCount == 1 && ctx->arguments[0].isString()) { + if (ctx->callData->argc == 1 && ctx->callData->args[0].isString()) { QLocale locale; - QString dateString = ctx->arguments[0].stringValue()->toQString(); + QString dateString = ctx->callData->args[0].stringValue()->toQString(); QDateTime dt = locale.toDateTime(dateString); return QV4::Encode(engine->newDateObject(dt)); } QV4::Scope scope(ctx); - if (ctx->argumentCount < 1 || ctx->argumentCount > 3 || !isLocaleObject(ctx->arguments[0])) + if (ctx->callData->argc < 1 || ctx->callData->argc > 3 || !isLocaleObject(ctx->callData->args[0])) V4THROW_ERROR("Locale: Date.fromLocaleString(): Invalid arguments"); - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QLocale::FormatType enumFormat = QLocale::LongFormat; QDateTime dt; - QString dateString = ctx->arguments[1].toQStringNoThrow(); - if (ctx->argumentCount == 3) { - if (ctx->arguments[2].isString()) { - QString format = ctx->arguments[2].stringValue()->toQString(); + QString dateString = ctx->callData->args[1].toQStringNoThrow(); + if (ctx->callData->argc == 3) { + if (ctx->callData->args[2].isString()) { + QString format = ctx->callData->args[2].stringValue()->toQString(); dt = r->locale.toDateTime(dateString, format); - } else if (ctx->arguments[2].isNumber()) { - quint32 intFormat = ctx->arguments[2].toNumber(); + } else if (ctx->callData->args[2].isNumber()) { + quint32 intFormat = ctx->callData->args[2].toNumber(); QLocale::FormatType format = QLocale::FormatType(intFormat); dt = r->locale.toDateTime(dateString, format); } else { @@ -311,31 +311,31 @@ QV4::ReturnedValue QQmlDateExtension::method_fromLocaleTimeString(QV4::SimpleCal { QV4::ExecutionEngine * const engine = ctx->engine; - if (ctx->argumentCount == 1 && ctx->arguments[0].isString()) { + if (ctx->callData->argc == 1 && ctx->callData->args[0].isString()) { QLocale locale; - QString timeString = ctx->arguments[0].stringValue()->toQString(); + QString timeString = ctx->callData->args[0].stringValue()->toQString(); QTime time = locale.toTime(timeString); QDateTime dt = QDateTime::currentDateTime(); dt.setTime(time); return QV4::Encode(engine->newDateObject(dt)); } - if (ctx->argumentCount < 1 || ctx->argumentCount > 3 || !isLocaleObject(ctx->arguments[0])) + if (ctx->callData->argc < 1 || ctx->callData->argc > 3 || !isLocaleObject(ctx->callData->args[0])) V4THROW_ERROR("Locale: Date.fromLocaleTimeString(): Invalid arguments"); QV4::Scope scope(ctx); - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QLocale::FormatType enumFormat = QLocale::LongFormat; QTime tm; - QString dateString = ctx->arguments[1].toQStringNoThrow(); - if (ctx->argumentCount == 3) { - if (ctx->arguments[2].isString()) { - QString format = ctx->arguments[2].stringValue()->toQString(); + QString dateString = ctx->callData->args[1].toQStringNoThrow(); + if (ctx->callData->argc == 3) { + if (ctx->callData->args[2].isString()) { + QString format = ctx->callData->args[2].stringValue()->toQString(); tm = r->locale.toTime(dateString, format); - } else if (ctx->arguments[2].isNumber()) { - quint32 intFormat = ctx->arguments[2].toNumber(); + } else if (ctx->callData->args[2].isNumber()) { + quint32 intFormat = ctx->callData->args[2].toNumber(); QLocale::FormatType format = QLocale::FormatType(intFormat); tm = r->locale.toTime(dateString, format); } else { @@ -355,29 +355,29 @@ QV4::ReturnedValue QQmlDateExtension::method_fromLocaleDateString(QV4::SimpleCal { QV4::ExecutionEngine * const engine = ctx->engine; - if (ctx->argumentCount == 1 && ctx->arguments[0].isString()) { + if (ctx->callData->argc == 1 && ctx->callData->args[0].isString()) { QLocale locale; - QString dateString = ctx->arguments[0].stringValue()->toQString(); + QString dateString = ctx->callData->args[0].stringValue()->toQString(); QDate date = locale.toDate(dateString); return QV4::Encode(engine->newDateObject(QDateTime(date))); } - if (ctx->argumentCount < 1 || ctx->argumentCount > 3 || !isLocaleObject(ctx->arguments[0])) + if (ctx->callData->argc < 1 || ctx->callData->argc > 3 || !isLocaleObject(ctx->callData->args[0])) V4THROW_ERROR("Locale: Date.fromLocaleDateString(): Invalid arguments"); QV4::Scope scope(ctx); - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QLocale::FormatType enumFormat = QLocale::LongFormat; QDate dt; - QString dateString = ctx->arguments[1].toQStringNoThrow(); - if (ctx->argumentCount == 3) { - if (ctx->arguments[2].isString()) { - QString format = ctx->arguments[2].stringValue()->toQString(); + QString dateString = ctx->callData->args[1].toQStringNoThrow(); + if (ctx->callData->argc == 3) { + if (ctx->callData->args[2].isString()) { + QString format = ctx->callData->args[2].stringValue()->toQString(); dt = r->locale.toDate(dateString, format); - } else if (ctx->arguments[2].isNumber()) { - quint32 intFormat = ctx->arguments[2].toNumber(); + } else if (ctx->callData->args[2].isNumber()) { + quint32 intFormat = ctx->callData->args[2].toNumber(); QLocale::FormatType format = QLocale::FormatType(intFormat); dt = r->locale.toDate(dateString, format); } else { @@ -392,7 +392,7 @@ QV4::ReturnedValue QQmlDateExtension::method_fromLocaleDateString(QV4::SimpleCal QV4::ReturnedValue QQmlDateExtension::method_timeZoneUpdated(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount != 0) + if (ctx->callData->argc != 0) V4THROW_ERROR("Locale: Date.timeZoneUpdated(): Invalid arguments"); QV4::DatePrototype::timezoneUpdated(); @@ -412,37 +412,37 @@ void QQmlNumberExtension::registerExtension(QV4::ExecutionEngine *engine) QV4::ReturnedValue QQmlNumberExtension::method_toLocaleString(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount > 3) + if (ctx->callData->argc > 3) V4THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments"); - double number = ctx->thisObject.toNumber(); + double number = ctx->callData->thisObject.toNumber(); - if (ctx->argumentCount == 0) { + if (ctx->callData->argc == 0) { // Use QLocale for standard toLocaleString() function QLocale locale; return QV4::Value::fromString(ctx, locale.toString(number)).asReturnedValue(); } - if (!isLocaleObject(ctx->arguments[0])) + if (!isLocaleObject(ctx->callData->args[0])) return QV4::NumberPrototype::method_toLocaleString(ctx); // Use the default Number toLocaleString() QV4::Scope scope(ctx); - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); quint16 format = 'f'; - if (ctx->argumentCount > 1) { - if (!ctx->arguments[1].isString()) + if (ctx->callData->argc > 1) { + if (!ctx->callData->args[1].isString()) V4THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments"); - QV4::String *fs = ctx->arguments[1].toString(ctx); + QV4::String *fs = ctx->callData->args[1].toString(ctx); if (!fs->isEmpty()) format = fs->toQString().at(0).unicode(); } int prec = 2; - if (ctx->argumentCount > 2) { - if (!ctx->arguments[2].isNumber()) + if (ctx->callData->argc > 2) { + if (!ctx->callData->args[2].isNumber()) V4THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments"); - prec = ctx->arguments[2].toInt32(); + prec = ctx->callData->args[2].toInt32(); } return QV4::Value::fromString(ctx, r->locale.toString(number, (char)format, prec)).asReturnedValue(); @@ -450,29 +450,29 @@ QV4::ReturnedValue QQmlNumberExtension::method_toLocaleString(QV4::SimpleCallCon QV4::ReturnedValue QQmlNumberExtension::method_toLocaleCurrencyString(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount > 2) + if (ctx->callData->argc > 2) V4THROW_ERROR("Locale: Number.toLocaleCurrencyString(): Invalid arguments"); - double number = ctx->thisObject.toNumber(); + double number = ctx->callData->thisObject.toNumber(); - if (ctx->argumentCount == 0) { + if (ctx->callData->argc == 0) { // Use QLocale for standard toLocaleString() function QLocale locale; return QV4::Value::fromString(ctx, locale.toString(number)).asReturnedValue(); } - if (!isLocaleObject(ctx->arguments[0])) + if (!isLocaleObject(ctx->callData->args[0])) V4THROW_ERROR("Locale: Number.toLocaleCurrencyString(): Invalid arguments"); QV4::Scope scope(ctx); - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); QString symbol; - if (ctx->argumentCount > 1) { - if (!ctx->arguments[1].isString()) + if (ctx->callData->argc > 1) { + if (!ctx->callData->args[1].isString()) V4THROW_ERROR("Locale: Number.toLocaleString(): Invalid arguments"); - symbol = ctx->arguments[1].toQStringNoThrow(); + symbol = ctx->callData->args[1].toQStringNoThrow(); } return QV4::Value::fromString(ctx, r->locale.toCurrencyString(number, symbol)).asReturnedValue(); @@ -480,7 +480,7 @@ QV4::ReturnedValue QQmlNumberExtension::method_toLocaleCurrencyString(QV4::Simpl QV4::ReturnedValue QQmlNumberExtension::method_fromLocaleString(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount < 1 || ctx->argumentCount > 2) + if (ctx->callData->argc < 1 || ctx->callData->argc > 2) V4THROW_ERROR("Locale: Number.fromLocaleString(): Invalid arguments"); int numberIdx = 0; @@ -488,17 +488,17 @@ QV4::ReturnedValue QQmlNumberExtension::method_fromLocaleString(QV4::SimpleCallC QV4::Scope scope(ctx); - if (ctx->argumentCount == 2) { - if (!isLocaleObject(ctx->arguments[0])) + if (ctx->callData->argc == 2) { + if (!isLocaleObject(ctx->callData->args[0])) V4THROW_ERROR("Locale: Number.fromLocaleString(): Invalid arguments"); - GET_LOCALE_DATA_RESOURCE(ctx->arguments[0]); + GET_LOCALE_DATA_RESOURCE(ctx->callData->args[0]); locale = r->locale; numberIdx = 1; } - QV4::String *ns = ctx->arguments[numberIdx].toString(ctx); + QV4::String *ns = ctx->callData->args[numberIdx].toString(ctx); if (ns->isEmpty()) return QV4::Encode(Q_QNAN); @@ -575,12 +575,12 @@ QV4::ReturnedValue QQmlLocaleData::method_get_uiLanguages(QV4::SimpleCallContext QV4::ReturnedValue QQmlLocaleData::method_currencySymbol(QV4::SimpleCallContext *ctx) { QLocale locale = getThisLocale(ctx); - if (ctx->argumentCount > 1) + if (ctx->callData->argc > 1) V4THROW_ERROR("Locale: currencySymbol(): Invalid arguments"); QLocale::CurrencySymbolFormat format = QLocale::CurrencySymbol; - if (ctx->argumentCount == 1) { - quint32 intFormat = ctx->arguments[0].toNumber(); + if (ctx->callData->argc == 1) { + quint32 intFormat = ctx->callData->args[0].toNumber(); format = QLocale::CurrencySymbolFormat(intFormat); } @@ -590,11 +590,11 @@ QV4::ReturnedValue QQmlLocaleData::method_currencySymbol(QV4::SimpleCallContext #define LOCALE_FORMAT(FUNC) \ QV4::ReturnedValue QQmlLocaleData::method_ ##FUNC (QV4::SimpleCallContext *ctx) { \ QLocale locale = getThisLocale(ctx); \ - if (ctx->argumentCount > 1) \ + if (ctx->callData->argc > 1) \ V4THROW_ERROR("Locale: " #FUNC "(): Invalid arguments"); \ QLocale::FormatType format = QLocale::LongFormat;\ - if (ctx->argumentCount == 1) { \ - quint32 intFormat = ctx->arguments[0].toUInt32(); \ + if (ctx->callData->argc == 1) { \ + quint32 intFormat = ctx->callData->args[0].toUInt32(); \ format = QLocale::FormatType(intFormat); \ } \ return QV4::Value::fromString(ctx, locale. FUNC (format)).asReturnedValue(); \ @@ -608,16 +608,16 @@ LOCALE_FORMAT(dateFormat) #define LOCALE_FORMATTED_MONTHNAME(VARIABLE) \ QV4::ReturnedValue QQmlLocaleData::method_ ## VARIABLE (QV4::SimpleCallContext *ctx) {\ QLocale locale = getThisLocale(ctx); \ - if (ctx->argumentCount < 1 || ctx->argumentCount > 2) \ + if (ctx->callData->argc < 1 || ctx->callData->argc > 2) \ V4THROW_ERROR("Locale: " #VARIABLE "(): Invalid arguments"); \ QLocale::FormatType enumFormat = QLocale::LongFormat; \ - int idx = ctx->arguments[0].toInt32() + 1; \ + int idx = ctx->callData->args[0].toInt32() + 1; \ if (idx < 1 || idx > 12) \ V4THROW_ERROR("Locale: Invalid month"); \ QString name; \ - if (ctx->argumentCount == 2) { \ - if (ctx->arguments[1].isNumber()) { \ - quint32 intFormat = ctx->arguments[1].toUInt32(); \ + if (ctx->callData->argc == 2) { \ + if (ctx->callData->args[1].isNumber()) { \ + quint32 intFormat = ctx->callData->args[1].toUInt32(); \ QLocale::FormatType format = QLocale::FormatType(intFormat); \ name = locale. VARIABLE(idx, format); \ } else { \ @@ -633,17 +633,17 @@ QV4::ReturnedValue QQmlLocaleData::method_ ## VARIABLE (QV4::SimpleCallContext * #define LOCALE_FORMATTED_DAYNAME(VARIABLE) \ QV4::ReturnedValue QQmlLocaleData::method_ ## VARIABLE (QV4::SimpleCallContext *ctx) {\ QLocale locale = getThisLocale(ctx); \ - if (ctx->argumentCount < 1 || ctx->argumentCount > 2) \ + if (ctx->callData->argc < 1 || ctx->callData->argc > 2) \ V4THROW_ERROR("Locale: " #VARIABLE "(): Invalid arguments"); \ QLocale::FormatType enumFormat = QLocale::LongFormat; \ - int idx = ctx->arguments[0].toInt32(); \ + int idx = ctx->callData->args[0].toInt32(); \ if (idx < 0 || idx > 7) \ V4THROW_ERROR("Locale: Invalid day"); \ if (idx == 0) idx = 7; \ QString name; \ - if (ctx->argumentCount == 2) { \ - if (ctx->arguments[1].isNumber()) { \ - quint32 intFormat = ctx->arguments[1].toUInt32(); \ + if (ctx->callData->argc == 2) { \ + if (ctx->callData->args[1].isNumber()) { \ + quint32 intFormat = ctx->callData->args[1].toUInt32(); \ QLocale::FormatType format = QLocale::FormatType(intFormat); \ name = locale. VARIABLE(idx, format); \ } else { \ @@ -851,14 +851,14 @@ void QQmlLocale::registerStringLocaleCompare(QV4::ExecutionEngine *engine) QV4::ReturnedValue QQmlLocale::method_localeCompare(QV4::SimpleCallContext *ctx) { - if (ctx->argumentCount != 1 || (!ctx->arguments[0].isString() && !ctx->arguments[0].asStringObject())) + if (ctx->callData->argc != 1 || (!ctx->callData->args[0].isString() && !ctx->callData->args[0].asStringObject())) return QV4::StringPrototype::method_localeCompare(ctx); - if (!ctx->thisObject.isString() && !ctx->thisObject.asStringObject()) + if (!ctx->callData->thisObject.isString() && !ctx->callData->thisObject.asStringObject()) return QV4::StringPrototype::method_localeCompare(ctx); - QString thisString = ctx->thisObject.toQStringNoThrow(); - QString thatString = ctx->arguments[0].toQStringNoThrow(); + QString thisString = ctx->callData->thisObject.toQStringNoThrow(); + QString thatString = ctx->callData->args[0].toQStringNoThrow(); return QV4::Encode(QString::localeAwareCompare(thisString, thatString)); } |