Index: CHANGELOG.txt =================================================================== RCS file: /cvs/drupal/drupal/CHANGELOG.txt,v retrieving revision 1.253.2.23 diff -u -p -r1.253.2.23 CHANGELOG.txt --- CHANGELOG.txt 14 Jan 2009 23:54:01 -0000 1.253.2.23 +++ CHANGELOG.txt 16 Feb 2009 12:26:22 -0000 @@ -2,6 +2,7 @@ Drupal 6.10-dev, xxxx-xx-xx (development release) ---------------------- +- Fixed node_feed() so custom fields can show up in RSS feeds. Drupal 6.9, 2009-01-14 ---------------------- Index: modules/node/node.module =================================================================== RCS file: /cvs/drupal/drupal/modules/node/node.module,v retrieving revision 1.947.2.13 diff -u -p -r1.947.2.13 node.module --- modules/node/node.module 14 Jan 2009 23:34:07 -0000 1.947.2.13 +++ modules/node/node.module 16 Feb 2009 12:26:23 -0000 @@ -1675,8 +1675,23 @@ function node_feed($nids = FALSE, $chann $item = node_prepare($item, $teaser); } - // Allow modules to change $node->teaser before viewing. + // Allow modules to change $node->content before the node is rendered. node_invoke_nodeapi($item, 'view', $teaser, FALSE); + + // Set the proper node property, then unset unused $node property so that a + // bad theme can not open a security hole. + $content = drupal_render($item->content); + if ($teaser) { + $item->teaser = $content; + unset($item->body); + } + else { + $item->body = $content; + unset($item->teaser); + } + + // Allow modules to modify the fully-built node. + node_invoke_nodeapi($item, 'alter', $teaser, FALSE); } // Allow modules to add additional item fields and/or modify $item