original_string: protected function _prepareHeaders($headers)
      {
          if (!$this->_mail) {
              /**
               * @see Zend_Mail_Transport_Exception
               */
              // require_once 'Zend/Mail/Transport/Exception.php';
              throw new Zend_Mail_Transport_Exception('_prepareHeaders requires a registered Zend_Mail object');
          }
  
          // mail() uses its $to parameter to set the To: header, and the $subject
          // parameter to set the Subject: header. We need to strip them out.
          if (0 === strpos(PHP_OS, 'WIN')) {
              // If the current recipients list is empty, throw an error
              if (empty($this->recipients)) {
                  /**
                   * @see Zend_Mail_Transport_Exception
                   */
                  // require_once 'Zend/Mail/Transport/Exception.php';
                  throw new Zend_Mail_Transport_Exception('Missing To addresses');
              }
          } else {
              // All others, simply grab the recipients and unset the To: header
              if (!isset($headers['To'])) {
                  /**
                   * @see Zend_Mail_Transport_Exception
                   */
                  // require_once 'Zend/Mail/Transport/Exception.php';
                  throw new Zend_Mail_Transport_Exception('Missing To header');
              }
  
              unset($headers['To']['append']);
              $this->recipients = implode(',', $headers['To']);
          }
  
          // Remove recipient header
          unset($headers['To']);
  
          // Remove subject header, if present
          if (isset($headers['Subject'])) {
              unset($headers['Subject']);
          }
  
          // Prepare headers
          parent::_prepareHeaders($headers);
  
          // Fix issue with empty blank line ontop when using Sendmail Trnasport
          $this->header = rtrim($this->header);
      }
code: protected function _prepareHeaders($headers)
      {
          if (!$this->_mail) {
              /**
               * @see Zend_Mail_Transport_Exception
               */
              // require_once 'Zend/Mail/Transport/Exception.php';
              throw new Zend_Mail_Transport_Exception('_prepareHeaders requires a registered Zend_Mail object');
          }
  
          // mail() uses its $to parameter to set the To: header, and the $subject
          // parameter to set the Subject: header. We need to strip them out.
          if (0 === strpos(PHP_OS, 'WIN')) {
              // If the current recipients list is empty, throw an error
              if (empty($this->recipients)) {
                  /**
                   * @see Zend_Mail_Transport_Exception
                   */
                  // require_once 'Zend/Mail/Transport/Exception.php';
                  throw new Zend_Mail_Transport_Exception('Missing To addresses');
              }
          } else {
              // All others, simply grab the recipients and unset the To: header
              if (!isset($headers['To'])) {
                  /**
                   * @see Zend_Mail_Transport_Exception
                   */
                  // require_once 'Zend/Mail/Transport/Exception.php';
                  throw new Zend_Mail_Transport_Exception('Missing To header');
              }
  
              unset($headers['To']['append']);
              $this->recipients = implode(',', $headers['To']);
          }
  
          // Remove recipient header
          unset($headers['To']);
  
          // Remove subject header, if present
          if (isset($headers['Subject'])) {
              unset($headers['Subject']);
          }
  
          // Prepare headers
          parent::_prepareHeaders($headers);
  
          // Fix issue with empty blank line ontop when using Sendmail Trnasport
          $this->header = rtrim($this->header);
      }
code_tokens: protected function _prepareHeaders ( $ headers ) { if ( ! $ this -> _mail ) { /**
               * @see Zend_Mail_Transport_Exception
               */ // require_once 'Zend/Mail/Transport/Exception.php'; throw new Zend_Mail_Transport_Exception ( '_prepareHeaders requires a registered Zend_Mail object' ) ; } // mail() uses its $to parameter to set the To: header, and the $subject // parameter to set the Subject: header. We need to strip them out. if ( 0 === strpos ( PHP_OS , 'WIN' ) ) { // If the current recipients list is empty, throw an error if ( empty ( $ this -> recipients ) ) { /**
                   * @see Zend_Mail_Transport_Exception
                   */ // require_once 'Zend/Mail/Transport/Exception.php'; throw new Zend_Mail_Transport_Exception ( 'Missing To addresses' ) ; } } else { // All others, simply grab the recipients and unset the To: header if ( ! isset ( $ headers [ 'To' ] ) ) { /**
                   * @see Zend_Mail_Transport_Exception
                   */ // require_once 'Zend/Mail/Transport/Exception.php'; throw new Zend_Mail_Transport_Exception ( 'Missing To header' ) ; } unset ( $ headers [ 'To' ] [ 'append' ] ) ; $ this -> recipients = implode ( ',' , $ headers [ 'To' ] ) ; } // Remove recipient header unset ( $ headers [ 'To' ] ) ; // Remove subject header, if present if ( isset ( $ headers [ 'Subject' ] ) ) { unset ( $ headers [ 'Subject' ] ) ; } // Prepare headers parent :: _prepareHeaders ( $ headers ) ; // Fix issue with empty blank line ontop when using Sendmail Trnasport $ this -> header = rtrim ( $ this -> header ) ; }
docstring: Format and fix headers
  
  mail() uses its $to and $subject arguments to set the To: and Subject:
  headers, respectively. This method strips those out as a sanity check to
  prevent duplicate header entries.
  
  @access  protected
  @param   array $headers
  @return  void
  @throws  Zend_Mail_Transport_Exception
docstring_tokens: Format and fix headers