? boost-453908.patch
Index: boost.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/boost/boost.module,v
retrieving revision 1.3.2.2.2.5.2.84
diff -u -p -r1.3.2.2.2.5.2.84 boost.module
--- boost.module	31 Jul 2009 09:49:23 -0000	1.3.2.2.2.5.2.84
+++ boost.module	2 Aug 2009 05:53:48 -0000
@@ -325,6 +325,16 @@ function boost_nodeapi(&$node, $op, $tea
         }
         boost_cache_expire_derivative('node/' . $node->nid, TRUE);
       }
+
+      // get terms and flush their page
+      $terms = taxonomy_node_get_terms(node_load($node->nid));
+      $filenames = array();
+      foreach($terms as $term) {
+        $filenames = array_merge($filenames, boost_get_db_term($term->tid));
+      }
+      foreach($filenames as $filename) {
+        boost_cache_kill($filename);
+      }
       break;
   }
 }
@@ -1316,6 +1326,18 @@ function boost_get_settings_db($router_i
 }
 
 /**
+ * Returns all cached pages asscoited with the taxonomy term.
+ */
+function boost_get_db_term($term) {
+ $filenames = array();
+ $result = db_query("SELECT filename FROM {boost_cache} WHERE expire > 0 AND page_id = %d AND page_callback = 'taxonomy'", $term);
+ while ($filename = db_fetch_array($result)) {
+    $filenames[] = $filename['filename'];
+  }
+  return $filenames;
+}
+
+/**
  * Writes data to filename in an atomic operation thats compatible with older
  * versions of php (php < 5.2.4 file_put_contents() doesn't lock correctly).
  *
