The problem is that inside Transaction::addObjectNew() a transaction object is deleted before removing it from the container. When deleting the corresponding transactional object (i.e. a DocumentObject or ViewProvider) it can happen that it e.g. calls Transaction::addOrRemoveProperty() that now finds the dangling pointer in the container. The safe way is to first remove the object from the container before deleting it.
18 KiB
18 KiB