--- nodeteaser.module	2007-02-16 20:57:30.000000000 +0100
+++ new/nodeteaser.module	2008-09-05 11:16:47.000000000 +0200
@@ -151,14 +151,20 @@ function _nodeteaser_insert($node) {
  * Update teaser for new and existing content
  */
 function _nodeteaser_update($node) {
+  $nt = db_fetch_object(db_query('SELECT teaser FROM {nodeteaser} WHERE nid = %d', $node->nid));
 
- $nt = db_fetch_object(db_query('SELECT teaser FROM {nodeteaser} WHERE nid = %d', $node->nid));
-
- if ($nt)
-   return db_query("UPDATE {nodeteaser} SET teaser = '%s' WHERE nid = %d", $node->nodeteaser, $node->nid);
- else
-   return _nodeteaser_insert($node);
- }
+  if ($nt) {
+    if ($node->node_teaser && $node->node_teaser != '') {
+      $node->nodeteaser = $node->node_teaser;
+    }
+    return db_query("UPDATE {nodeteaser} SET teaser = '%s' WHERE nid = %d", $node->nodeteaser, $node->nid);
+  }
+  else {
+    return _nodeteaser_insert($node);
+  }
+}
 
 /**
  * Module configuration settings
