/**
  * Fetches thread data from IMAP server
  */
 private function get_thread_data($mailbox, $mbox_data = array())
 {
     if (empty($mbox_data)) {
         $mbox_data = $this->imap->folder_data($mailbox);
     }
     if ($mbox_data['EXISTS']) {
         // get all threads (default sort order)
         return $this->imap->threads_direct($mailbox);
     }
     return new rcube_result_thread($mailbox, '* THREAD');
 }