From 878b11e0a94e892c0377bca01b49706c150926ed Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Sat, 1 Nov 2014 20:56:47 +0100 Subject: Let markObjects() operate directly on HeapObjects This decouples things a bit better and helps moving over to directly store heapobject pointers in other objects. Change-Id: I798f922e018b0a3ca6f8768e4a810187f34d82f6 Reviewed-by: Simon Hausmann --- src/quick/items/context2d/qquickcontext2d.cpp | 4 ++-- src/quick/items/qquickview.cpp | 4 ++-- src/quick/items/qquickview_p.h | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src/quick/items') diff --git a/src/quick/items/context2d/qquickcontext2d.cpp b/src/quick/items/context2d/qquickcontext2d.cpp index 25ac68150d..1b29cd0b02 100644 --- a/src/quick/items/context2d/qquickcontext2d.cpp +++ b/src/quick/items/context2d/qquickcontext2d.cpp @@ -908,8 +908,8 @@ struct QQuickJSContext2DImageData : public QV4::Object static QV4::ReturnedValue method_get_height(QV4::CallContext *ctx); static QV4::ReturnedValue method_get_data(QV4::CallContext *ctx); - static void markObjects(Managed *that, QV4::ExecutionEngine *engine) { - static_cast(that)->d()->pixelData.mark(engine); + static void markObjects(QV4::HeapObject *that, QV4::ExecutionEngine *engine) { + static_cast(that)->pixelData.mark(engine); QV4::Object::markObjects(that, engine); } }; diff --git a/src/quick/items/qquickview.cpp b/src/quick/items/qquickview.cpp index d00fd1045a..ae33f9261c 100644 --- a/src/quick/items/qquickview.cpp +++ b/src/quick/items/qquickview.cpp @@ -56,9 +56,9 @@ QV4::Returned *QQuickRootItemMarker::create(QQmlEngine *en return e->memoryManager->alloc(e, window); } -void QQuickRootItemMarker::markObjects(QV4::Managed *that, QV4::ExecutionEngine *e) +void QQuickRootItemMarker::markObjects(QV4::HeapObject *that, QV4::ExecutionEngine *e) { - QQuickItem *root = static_cast(that)->d()->window->contentItem(); + QQuickItem *root = static_cast(that)->window->contentItem(); if (root) { QQuickItemPrivate *rootPrivate = QQuickItemPrivate::get(root); rootPrivate->markObjects(e); diff --git a/src/quick/items/qquickview_p.h b/src/quick/items/qquickview_p.h index 50d6375b79..7e39ed89b2 100644 --- a/src/quick/items/qquickview_p.h +++ b/src/quick/items/qquickview_p.h @@ -110,7 +110,7 @@ struct QQuickRootItemMarker : public QV4::Object static QV4::Returned *create(QQmlEngine *engine, QQuickWindow *window); - static void markObjects(Managed *that, QV4::ExecutionEngine *e); + static void markObjects(QV4::HeapObject *that, QV4::ExecutionEngine *e); }; -- cgit v1.2.3