Fix #30858: UI losing buttons at some random moment after using Blender for a
authorBrecht Van Lommel <brechtvanlommel@pandora.be>
Fri, 13 Apr 2012 16:03:52 +0000 (16:03 +0000)
committerBrecht Van Lommel <brechtvanlommel@pandora.be>
Fri, 13 Apr 2012 16:03:52 +0000 (16:03 +0000)
commit440f4492656ec26c90017976553909b48e93c3fa
treefdfebcf240d9af24c095a14c717d56f7be130460
parent152b253c2cfc5bc1b2669c4bf6accd4820d092a4
Fix #30858: UI losing buttons at some random moment after using Blender for a
while. This may not fix all cases but should at least solve the issue when
rendering with cycles.

The cause was a race condition on C->data.recursion, with multiple threads
accessing context at the same time. Cycles itself does not access context
from the render thread, but the bpy api would do a context update for any
callback in case e.g. a new file got loaded. Disabled that now in non-main
threads.

The ideal solution would be to not allow any context access at all from threads
but that's not so simple to implement, especially not this close to release.
source/blender/python/intern/bpy_interface.c