alecpl
2010-09-15 457373bf3ff3c875a8626824c2068aed7a4c989e
- Fix: close() method of addressbook object(s) is not called in shutdown function


1 files modified
10 ■■■■ changed files
program/include/rcmail.php 10 ●●●● patch | view | raw | blame | history
program/include/rcmail.php
@@ -45,6 +45,7 @@
  public $comm_path = './';
  private $texts;
  private $books = array();
  /**
@@ -279,6 +280,10 @@
    else { // $id == 'sql'
      $contacts = new rcube_contacts($this->db, $this->user->ID);
    }
    // add to the 'books' array for shutdown function
    if (!in_array($contacts, $this->books))
      $this->books[] = $contacts;
    return $contacts;
  }
@@ -974,8 +979,9 @@
    if (is_object($this->smtp))
      $this->smtp->disconnect();
    if (is_object($this->contacts))
      $this->contacts->close();
    foreach ($this->books as $book)
      if (is_object($book))
        $book->close();
    // before closing the database connection, write session data
    if ($_SERVER['REMOTE_ADDR'])