Development

Changeset 1431

You must first sign up to be able to contribute.

Changeset 1431

Show
Ignore:
Timestamp:
06/13/06 13:56:51 (2 years ago)
Author:
fabien
Message:

Iterators for escaped arrays stop when a false value is encountered (closes #625 - patch from Mike Squire)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lib/view/escaper/sfOutputEscaperArrayDecorator.class.php

    r1415 r1431  
    3030{ 
    3131  /** 
    32    * Used by the iterator to remember if the current element is valid. 
     32   * Used by the iterator to know if the current element is valid. 
    3333   * 
    34    * @var boolean 
     34   * @var int 
    3535   */ 
    36   private $valid = false
     36  private $count
    3737 
    3838  /** 
     
    4141  public function rewind() 
    4242  { 
    43     $this->valid = (reset($this->value) !== false); 
     43    reset($this->value); 
     44 
     45    $this->count = count($this->value); 
    4446  } 
    4547 
     
    7476  public function next() 
    7577  { 
    76     $this->valid = (next($this->value) !== false); 
     78    next($this->value); 
     79 
     80    $this->count --; 
    7781  } 
    7882 
     
    8993  public function valid() 
    9094  { 
    91     return $this->valid
     95    return $this->count > 0
    9296  } 
    9397