Index: feedapi.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedapi/feedapi.module,v
retrieving revision 1.23.2.119.2.17
diff -u -r1.23.2.119.2.17 feedapi.module
--- feedapi.module	5 Jun 2008 20:25:06 -0000	1.23.2.119.2.17
+++ feedapi.module	12 Jul 2008 03:31:13 -0000
@@ -1026,17 +1026,17 @@
  * Stores settings per content type or per node.
  *
  * @param $args
- *  Associative array which is $args['nid'] = N or $args['node_type'] = "content_type". Depends on what to store for
+ *  Associative array which is $args['nid'] = N or $args['node_type'] = "content_type".
+ *  Depends on what to store for.
  * @param $settings
- *  The settings data itself
+ *  The settings data itself.
  */
 function _feedapi_store_settings($args, $settings) {
   if (isset($args['nid'])) {
     db_query("UPDATE {feedapi} SET settings = '%s', skip = %d WHERE nid = %d", serialize($settings), $settings['skip'], $args['nid']);
     module_invoke_all('feedapi_after_settings', $args['nid'], $settings);
     // This ensures that next time, not the cached, but the updated value will be used.
-    static $node_settings;
-    unset($node_settings[$args['nid']]);
+    feedapi_get_settings(NULL, $args['nid'], TRUE);
   }
   elseif ($args['node_type']) {
     variable_set('feedapi_settings_'. $args['node_type'], $settings);
@@ -1301,11 +1301,11 @@
  * Watch out: cache permutations of node_type or node_type+nid or nid.
  * Watch out: changes within page load likely.
  */
-function feedapi_get_settings($node_type, $nid = FALSE) {
+function feedapi_get_settings($node_type, $nid = FALSE, $reset = FALSE) {
   static $node_settings;
   
   if (is_numeric($nid)) {
-    if (!isset($node_settings[$nid])) {
+    if (!isset($node_settings[$nid]) || $reset) {
       if ($settings = db_fetch_object(db_query('SELECT settings FROM {feedapi} WHERE nid = %d', $nid))) {
         $settings = unserialize($settings->settings);
       }
