View Single Post
02/09/17, 11:15 PM   #5
Phinix
 
Phinix's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 186
Originally Posted by Scootworks View Post
The problem with Homestead wasn't so much that protected functions changed (though I think some did?). The problem was that in the source ZOS changed some of the functions CALLED by functions and these functions call other functions which are protected, so previously unprotected functions that were hooked and made insecure are now suddenly invoking these new linked functions that make CALLS to protected functions, so multiple steps down the line they are resulting in the errors.

For example hooking into the header buttons for container objects used to be safe because there were no functions using them that made calls to protected functions. That changed in Homestead and BAM! Error city.

Originally Posted by Randactyl View Post
In general, hooking or overriding code which sets up objects will be prone to error. It's on the author to research their code paths and determine the outcomes (dropped the ball here myself this patch).

A manual posthook does not have to be regarded as a sort of boogyman, just use care when researching if it will work as expected.
Fair enough. Teaches us not to get complacent with reading PTS updates.

Thanks for your work tracking this down, and for explaining it in a way that makes sense.
  Reply With Quote