[drupal-devel] [bug] Teaser always truncated at 600 characters

killes drupal-devel at drupal.org
Sun Aug 21 19:49:18 UTC 2005

Issue status update for 
Post a follow up: 

 Project:      Drupal
-Version:      4.6.2
+Version:      cvs
 Component:    node.module
 Category:     bug reports
 Priority:     normal
 Assigned to:  Anonymous
 Reported by:  neale
 Updated by:   killes at www.drop.org
-Status:       active
+Status:       patch (code needs review)

changing version and status.

killes at www.drop.org

Previous comments:

Thu, 04 Aug 2005 19:18:23 +0000 : neale

Attachment: http://drupal.org/files/issues/diff_27 (1.16 KB)

The truncation code in node_teaser doesn't make any sense to me:

 foreach ($breakpoints as $point => $charnum) {
   if ($length = strpos($body, $point, $size)) {
     return substr($body, 0, $length + $charnum);

I don't understand: why is the offset given to strpos the maximum
teaser size?  This would cause teasers to only be nicely split if they
are enough longer than the max. teaser size to have one of the special
characters.  But this guarantees the teaser will either be abruptly
truncated, or over the max. teaser size!  In fact, this is what I'm
seeing on my installation.

Attached is a patch that makes it work the way I think it was intended.
 At least, it makes more sense to me.

More information about the drupal-devel mailing list