Make WordPress Core

Changes between Initial Version and Version 1 of Ticket #31792, comment 12


Ignore:
Timestamp:
03/16/2016 11:56:50 PM (11 years ago)
Author:
jeichorn

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #31792, comment 12

    initial v1  
    11So this finally happened to me again.  I was able to trace down the cause.
    22
    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.
     3Objects 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.