diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/opengl/qopenglframebufferobject.cpp | 4 | ||||
-rw-r--r-- | src/opengl/qglframebufferobject.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/gui/opengl/qopenglframebufferobject.cpp b/src/gui/opengl/qopenglframebufferobject.cpp index aac6ea05584..0eb264b2d9d 100644 --- a/src/gui/opengl/qopenglframebufferobject.cpp +++ b/src/gui/opengl/qopenglframebufferobject.cpp @@ -414,8 +414,8 @@ void QOpenGLFramebufferObjectPrivate::init(QOpenGLFramebufferObject *, const QSi int height = size.height(); int level = 0; while (width > 1 || height > 1) { - width = (width + 1) >> 1; - height = (height + 1) >> 1; + width = qMax(1, width >> 1); + height = qMax(1, height >> 1); ++level; glTexImage2D(target, level, internal_format, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); diff --git a/src/opengl/qglframebufferobject.cpp b/src/opengl/qglframebufferobject.cpp index 96479e189e6..21b3abfdd89 100644 --- a/src/opengl/qglframebufferobject.cpp +++ b/src/opengl/qglframebufferobject.cpp @@ -459,8 +459,8 @@ void QGLFramebufferObjectPrivate::init(QGLFramebufferObject *q, const QSize &sz, int height = size.height(); int level = 0; while (width > 1 || height > 1) { - width = (width + 1) >> 1; - height = (height + 1) >> 1; + width = qMax(1, width >> 1); + height = qMax(1, height >> 1); ++level; glTexImage2D(target, level, internal_format, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); |