aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlan Alpert <alan.alpert@nokia.com>2011-05-18 21:11:51 +1000
committerAlan Alpert <alan.alpert@nokia.com>2011-05-18 21:11:51 +1000
commit1edb32e75df1b52411907d0c35130dfb48018b83 (patch)
tree5e2617b1eb21e5ef9e0058128903b0c2ebb3d802 /src
parentb8338a188160651fec238edb4d7fd59417eefe6d (diff)
parent57d9b5d3ca685ceacc0537dc9d3afdfaa243a768 (diff)
Merge branch 'qtquick2' of scm.dev.nokia.troll.no:qt/qtdeclarative-staging into qtquick2
Diffstat (limited to 'src')
-rw-r--r--src/declarative/items/qsgshadereffectsource.cpp4
-rw-r--r--src/declarative/qml/qdeclarativeengine.cpp3
2 files changed, 5 insertions, 2 deletions
diff --git a/src/declarative/items/qsgshadereffectsource.cpp b/src/declarative/items/qsgshadereffectsource.cpp
index 5b6f305f17..199a56067e 100644
--- a/src/declarative/items/qsgshadereffectsource.cpp
+++ b/src/declarative/items/qsgshadereffectsource.cpp
@@ -774,12 +774,12 @@ QSGNode *QSGShaderEffectSource::updatePaintNode(QSGNode *oldNode, UpdatePaintNod
tex->setLive(m_live);
tex->setItem(QSGItemPrivate::get(m_sourceItem)->itemNode());
- QRectF sourceRect = m_sourceRect.isNull()
+ QRectF sourceRect = m_sourceRect.isEmpty()
? QRectF(0, 0, m_sourceItem->width(), m_sourceItem->height())
: m_sourceRect;
tex->setRect(sourceRect);
QSize textureSize = m_textureSize.isEmpty()
- ? QSize(qCeil(qAbs(sourceRect.width())), qCeil(qAbs(sourceRect.height())))
+ ? QSize(qCeil(sourceRect.width()), qCeil(sourceRect.height()))
: m_textureSize;
tex->setSize(textureSize);
tex->setRecursive(m_recursive);
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp
index eb2974f46a..001884161b 100644
--- a/src/declarative/qml/qdeclarativeengine.cpp
+++ b/src/declarative/qml/qdeclarativeengine.cpp
@@ -1740,6 +1740,9 @@ QScriptValue QDeclarativeEnginePrivate::rect(QScriptContext *ctxt, QScriptEngine
qsreal w = ctxt->argument(2).toNumber();
qsreal h = ctxt->argument(3).toNumber();
+ if (w < 0 || h < 0)
+ return engine->nullValue();
+
return QDeclarativeEnginePrivate::get(engine)->scriptValueFromVariant(QVariant::fromValue(QRectF(x, y, w, h)));
}