aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quick/items/context2d/qquickcanvasitem.cpp3
-rw-r--r--tests/auto/qtquick2/qquickcanvasitem/data/tst_drawimage.qml7
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';