Change ghost behavior so that a ghost always derives from the old bases.
When a portal type class is reset, the ghost that will be used should not be a "basic" ghost (InitGhostBase) only deriving from Base, or we will have a lot of code breaking. This ghost should of course have a __getattribute__ method making sure that we get out of ghost state as soon as possible, but most of all, the __bases__ of this ghost should be the __bases__ of the old portal type. In this way, the class behavior before and after a restoreGhostState should not change, pending un-ghostification. In particular, class attribute lookups will still return the correct values. (only instance attribute lookups can trigger a loadClass call) git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@40827 20353a03-c40f-0410-a6d1-a30d3c3de9de
Showing
Please register or sign in to comment