Changes between Initial Version and Version 1 of Ticket #31792, comment 12
- Timestamp:
- 03/16/2016 11:56:50 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #31792, comment 12
initial v1 1 1 So this finally happened to me again. I was able to trace down the cause. 2 2 3 Objects are being stored in the uninstall_plugins due to the uninstall being callbacks being on classes. The un-serization happens in the first plugin that calls register_uninstall_hook, but the classes used by other plugins aren't loaded yet, set they un-serialize as __PHP_Incomplete_Class. Then when the next plugin calls register_uninstall_hook, its serializing an object with the actual class name so its a different value in PHP, so the comparison in update_option fails.3 Objects are being stored in the uninstall_plugins due to the uninstall being callbacks being on classes. The un-serization happens in the first plugin that calls register_uninstall_hook, but the classes used by other plugins aren't loaded yet, set they un-serialize as PHP_Incomplete_Class. Then when the next plugin calls register_uninstall_hook, its serializing an object with the actual class name so its a different value in PHP, so the comparison in update_option fails.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)