diff options
-rw-r--r-- | src/quick/items/context2d/qquickcanvasitem.cpp | 3 | ||||
-rw-r--r-- | tests/auto/qtquick2/qquickcanvasitem/data/tst_drawimage.qml | 7 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/quick/items/context2d/qquickcanvasitem.cpp b/src/quick/items/context2d/qquickcanvasitem.cpp index 32809babed..e8decdc4ed 100644 --- a/src/quick/items/context2d/qquickcanvasitem.cpp +++ b/src/quick/items/context2d/qquickcanvasitem.cpp @@ -577,7 +577,8 @@ void QQuickCanvasItem::loadImage(const QUrl& url) pix->load(qmlEngine(this) , fullPathUrl , QDeclarativePixmap::Cache | QDeclarativePixmap::Asynchronous); - pix->connectFinished(this, SIGNAL(imageLoaded())); + if (pix->isLoading()) + pix->connectFinished(this, SIGNAL(imageLoaded())); } } /*! diff --git a/tests/auto/qtquick2/qquickcanvasitem/data/tst_drawimage.qml b/tests/auto/qtquick2/qquickcanvasitem/data/tst_drawimage.qml index 3752f528be..102217dc0c 100644 --- a/tests/auto/qtquick2/qquickcanvasitem/data/tst_drawimage.qml +++ b/tests/auto/qtquick2/qquickcanvasitem/data/tst_drawimage.qml @@ -129,6 +129,8 @@ Canvas { function test_self() { var ctx = canvas.getContext('2d'); ctx.reset(); + ignoreWarning("QImage::scaled: Image is a null image"); + ignoreWarning("QImage::scaled: Image is a null image"); ctx.fillStyle = '#0f0'; ctx.fillRect(0, 0, 50, 50); @@ -258,7 +260,10 @@ Canvas { function test_nonfinite() { var ctx = canvas.getContext('2d'); ctx.reset(); - + ignoreWarning("QImage::scaled: Image is a null image"); + ignoreWarning("QImage::scaled: Image is a null image"); + ignoreWarning("QImage::scaled: Image is a null image"); + ignoreWarning("QImage::scaled: Image is a null image"); ctx.fillStyle = '#0f0'; ctx.fillRect(0, 0, 100, 50); var red = 'red.png'; |