The undo problem was caused by python operators returning 'RUNNING_MODAL' rather then the return value from wm.invoke_props_popup(self, event) - 'FINISHED'. This was done because returning FINISHED would free the operator causing the buttons redo handler to try and run a freed operator and crash. So the real fix is to disallow any operators to use wm.invoke_props_popup(self, event) if they dont have the REGISTER option enabled, fixing the crash and redo problem.
20 KiB
20 KiB