From 83aa1933c82333b7ec5128442ac9ee2161387491 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Tue, 29 Nov 2016 15:23:34 +0100 Subject: Add a sourceLocation() accessor to QV4::Function Change-Id: I3a38ee44ce46c2416ceef153ce631bc15fd461fe Reviewed-by: Simon Hausmann --- src/qml/jsruntime/qv4function_p.h | 6 ++++++ src/qml/jsruntime/qv4functionobject.cpp | 4 +--- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'src/qml/jsruntime') diff --git a/src/qml/jsruntime/qv4function_p.h b/src/qml/jsruntime/qv4function_p.h index 6e0ba9d764..12094a0943 100644 --- a/src/qml/jsruntime/qv4function_p.h +++ b/src/qml/jsruntime/qv4function_p.h @@ -51,6 +51,7 @@ // #include "qv4global_p.h" +#include #include QT_BEGIN_NAMESPACE @@ -89,6 +90,11 @@ struct Q_QML_EXPORT Function { inline bool needsActivation() const { return activationRequired; } + QQmlSourceLocation sourceLocation() const + { + return QQmlSourceLocation(sourceFile(), compiledFunction->location.line, compiledFunction->location.column); + } + }; } diff --git a/src/qml/jsruntime/qv4functionobject.cpp b/src/qml/jsruntime/qv4functionobject.cpp index 28a9949464..8e84eaebe7 100644 --- a/src/qml/jsruntime/qv4functionobject.cpp +++ b/src/qml/jsruntime/qv4functionobject.cpp @@ -237,10 +237,8 @@ QQmlSourceLocation FunctionObject::sourceLocation() const Q_ASSERT(as()); return *static_cast(d())->bindingLocation; } - QV4::Function *function = d()->function; - Q_ASSERT(function); - return QQmlSourceLocation(function->sourceFile(), function->compiledFunction->location.line, function->compiledFunction->location.column); + return d()->function->sourceLocation(); } DEFINE_OBJECT_VTABLE(FunctionCtor); -- cgit v1.2.3