[drupal-docs] [bug] hook_load can overwrite information: should be
documented
fgm
drupal-docs at drupal.org
Sun Oct 9 11:12:48 UTC 2005
Issue status update for
http://drupal.org/node/33523
Post a follow up:
http://drupal.org/project/comments/add/33523
Project: Documentation
Version: <none>
Component: Developer Guide
Category: bug reports
Priority: normal
Assigned to: Anonymous
Reported by: fgm
Updated by: fgm
Status: active
Error in description: they can't be removed by using unset, but giving
them a null value effectively erases the previous value without leaving
any usable value.
fgm
Previous comments:
------------------------------------------------------------------------
Sun, 09 Oct 2005 11:06:43 +0000 : fgm
The description for hook_load says that It is called to allow the module
a chance to load extra information that it stores about a node. and that
the returned object will be merged with the passed-in $node to result in
an object containing both sets of properties.
This is not exactly what happens: node.module/node_load does not
exactly return the node containing both sets of properties, but the
passed-in properties, plus the extra properties added by the hook_load
implementation, which can replace the passed-in properties if the
returned object contains keys having the same name as the passed-in
properties, which means they are not only "extra" properties.
This means existing properties loaded in the first part of node_load
can be overwritten, or even removed by hook_load (using unset), which
should be
- either documented if this is the desired behaviour for the code,
- or avoided by sanitizing the return value of hook_load through
checking for duplicates with the passed-in values.
Page affected:
http://drupaldocs.org/api/head/function/node_load
http://drupaldocs.org/api/4.6/function/node_load
More information about the drupal-docs
mailing list