diff --git a/src/imports/qtcanvas3d/doc/qtcanvas3d.qdocconf b/src/imports/qtcanvas3d/doc/qtcanvas3d.qdocconf
index be8e805f06c5a935f83f42d7f52c4f590db5ddc7..c0a7ae450cc75012483dee6aae0f312b683a4e84 100644
--- a/src/imports/qtcanvas3d/doc/qtcanvas3d.qdocconf
+++ b/src/imports/qtcanvas3d/doc/qtcanvas3d.qdocconf
@@ -1,8 +1,8 @@
 include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
 
 project             = QtCanvas3D
-description         = QtCanvas3D Reference Documentation
-version             = 1.1.0
+description         = Qt Canvas 3D Reference Documentation
+version             = $QT_VERSION
 
 exampledirs = ../../../../examples/canvas3d \
               snippets
@@ -18,15 +18,15 @@ depends     = qtcore qtgui qtqml qtquick qtquickcontrols qtquicklayouts qtdoc qt
 qhp.projects                   = QtCanvas3D
 
 qhp.QtCanvas3D.file            = qtcanvas3d.qhp
-qhp.QtCanvas3D.namespace       = org.qt-project.qtcanvas3d.100
+qhp.QtCanvas3D.namespace       = org.qt-project.qtcanvas3d.$QT_VERSION_TAG
 qhp.QtCanvas3D.virtualFolder   = qtcanvas3d
 qhp.QtCanvas3D.indexTitle      = Qt Canvas 3D
 qhp.QtCanvas3D.indexRoot       =
 
 
-qhp.QtCanvas3D.filterAttributes                        = qtcanvas3d 1.1.0 qtrefdoc
-qhp.QtCanvas3D.customFilters.Qt.name                   = QtCanvas3D 1.1.0
-qhp.QtCanvas3D.customFilters.Qt.filterAttributes       = qtcanvas3d 1.1.0
+qhp.QtCanvas3D.filterAttributes                        = qtcanvas3d $QT_VERSION qtrefdoc
+qhp.QtCanvas3D.customFilters.Qt.name                   = QtCanvas3D $QT_VERSION
+qhp.QtCanvas3D.customFilters.Qt.filterAttributes       = qtcanvas3d $QT_VERSION
 qhp.QtCanvas3D.subprojects                             = gettingstarted examples types
 qhp.QtCanvas3D.subprojects.gettingstarted.title        = Getting Started
 qhp.QtCanvas3D.subprojects.gettingstarted.indexTitle   = Qt Canvas 3D Getting Started
diff --git a/src/imports/qtcanvas3d/teximage3d.cpp b/src/imports/qtcanvas3d/teximage3d.cpp
index 652e8c2b7360d464d8e04a35195feb9570cb775e..8528d159f70829ac8f84c7e9965d715018149e0d 100644
--- a/src/imports/qtcanvas3d/teximage3d.cpp
+++ b/src/imports/qtcanvas3d/teximage3d.cpp
@@ -198,7 +198,7 @@ void CanvasTextureImage::cleanupNetworkReply()
 
 CanvasTextureImage::~CanvasTextureImage()
 {
-    if (m_parentFactory)
+    if (!m_parentFactory.isNull())
         m_parentFactory->handleImageDestroyed(this);
     cleanupNetworkReply();
     delete[] m_pixelCache;
@@ -257,7 +257,8 @@ void CanvasTextureImage::load()
         return;
 
     setImageState(LOADING);
-    m_parentFactory->handleImageLoadingStarted(this);
+    if (!m_parentFactory.isNull())
+        m_parentFactory->handleImageLoadingStarted(this);
     emit imageLoadingStarted(this);
 
     QNetworkRequest request(m_source);
diff --git a/src/imports/qtcanvas3d/teximage3d_p.h b/src/imports/qtcanvas3d/teximage3d_p.h
index 6789a2eced9a8dc57c5b01929c019f545179d0ae..59bd0d6c9dcea5a68299d6eaaa61e65ac66bd9bd 100644
--- a/src/imports/qtcanvas3d/teximage3d_p.h
+++ b/src/imports/qtcanvas3d/teximage3d_p.h
@@ -51,6 +51,7 @@
 #include "abstractobject3d_p.h"
 
 #include <QtCore/QUrl>
+#include <QtCore/QPointer>
 #include <QtGui/QImage>
 #include <QtNetwork/QNetworkAccessManager>
 #include <QtNetwork/QNetworkReply>
@@ -159,7 +160,7 @@ private:
     bool m_pixelCacheFlipY;
     QImage m_glImage;
     QVariant *m_anyValue;
-    CanvasTextureImageFactory *m_parentFactory;
+    QPointer<CanvasTextureImageFactory> m_parentFactory;
 };
 
 QT_CANVAS3D_END_NAMESPACE