--- node.module.4.7	2006-12-06 22:20:21.000000000 +0100
+++ node.module.4.7.node_teaser	2006-12-06 22:33:11.000000000 +0100
@@ -180,19 +180,21 @@
     return $body;
   }
 
+  $ret = truncate_utf8($body, $size);
+	
   // In some cases, no delimiter has been specified (e.g. when posting using
   // the Blogger API). In this case, we try to split at paragraph boundaries.
   // When even the first paragraph is too long, we try to split at the end of
   // the next sentence.
   $breakpoints = array('</p>' => 4, '<br />' => 0, '<br>' => 0, "\n" => 0, '. ' => 1, '! ' => 1, '? ' => 1, '。' => 3, '؟ ' => 1);
   foreach ($breakpoints as $point => $charnum) {
-    if ($length = strpos($body, $point, $size)) {
-      return substr($body, 0, $length + $charnum);
+    if ($length = strrpos($ret, $point)) {
+      return substr($ret, 0, $length + $charnum);
     }
   }
 
   // If all else fails, we simply truncate the string.
-  return truncate_utf8($body, $size);
+  return $ret;
 }
 
 function _node_names($op = '', $node = NULL) {
