Disable a WorldView's rendering if an error occurs.
This commit is contained in:
parent
60923091a8
commit
9809f27022
@ -564,7 +564,11 @@ class WorldView(QGLWidget):
|
|||||||
return
|
return
|
||||||
super(WorldView, self).glDraw(*args, **kwargs)
|
super(WorldView, self).glDraw(*args, **kwargs)
|
||||||
|
|
||||||
|
shouldRender = True
|
||||||
def paintGL(self):
|
def paintGL(self):
|
||||||
|
if not self.shouldRender:
|
||||||
|
return
|
||||||
|
try:
|
||||||
with profiler.context("paintGL: %s" % self):
|
with profiler.context("paintGL: %s" % self):
|
||||||
self.frameSamples.append(time.time())
|
self.frameSamples.append(time.time())
|
||||||
if self.textureAtlas:
|
if self.textureAtlas:
|
||||||
@ -576,6 +580,9 @@ class WorldView(QGLWidget):
|
|||||||
self.doneCurrent()
|
self.doneCurrent()
|
||||||
self.bufferSwapDone = False
|
self.bufferSwapDone = False
|
||||||
self.doSwapBuffers.emit()
|
self.doSwapBuffers.emit()
|
||||||
|
except:
|
||||||
|
self.shouldRender = False
|
||||||
|
raise
|
||||||
|
|
||||||
def swapDone(self):
|
def swapDone(self):
|
||||||
self.bufferSwapDone = True
|
self.bufferSwapDone = True
|
||||||
|
Reference in New Issue
Block a user