- Regex filtered bsrs Kjetil Torgrim Homme <kjetilho@linpro.no> 15Aug08
 - Allow Mixed Priorities  Kjetil Torgrim Homme <kjetilho@linpro.no> 30Jun08
 - New configure options --disable-libtool, --docdir, --htmldir, ...
+- Virtual Full and Pools
 
 Code to be completed before 3.0.0 is released:
-1. Fix Exchange plugin bugs 1234,1235,1236,1237
-   *1234 fixed.
 2. Finish documentation (some noted above)
-3. Make plugins work with Accurate -- needs two new API calls
-   - mark file not deleted
-   - is file deleted (at end of job)
-   - Pass accurate flag to Plugin (* this works)
-   * code implemented not yet intgrated into Exchange plugin
-4. Possibly change VirtualFull to use same input and output pool.
 
 New features implemented:
 - Accurate Backup
 
    fd_set fdset;
    struct timeval tv;
 
+   if (this == NULL) {
+      return -1;
+   }
    FD_ZERO(&fdset);
    FD_SET((unsigned)m_fd, &fdset);
    tv.tv_sec = sec;
 
 
 static int tls_pem_callback(char *buf, int size, const void *userdata);
 
-DirComm::DirComm(Console *parent, int conn):
-m_notifier(NULL),
-m_api_set(false)
+DirComm::DirComm(Console *parent, int conn):  m_notifier(NULL),  m_api_set(false)
 {
    m_console = parent;
    m_sock = NULL;
  */
 int DirComm::read()
 {
-   int stat = 0;
+   int stat = -1;
+
+   if (!m_sock) {
+      return -1;
+   }
    while (m_sock) {
       for (;;) {
          if (!m_sock) break;
          }
       }
       if (!m_sock) {
-         return BNET_HARDEOF;
+         return -1;
       }
       m_sock->msg[0] = 0;
       stat = sock_read();
 
 bool Console::dir_cmd(const char *cmd, QStringList &results)
 {
    int conn;
-   if(availableDirComm(conn)) {
+   if (availableDirComm(conn)) {
       dir_cmd(conn, cmd, results);
       return true;
    } else {
 int Console::write_dir(const char *msg)
 {
    int conn;
-   if(availableDirComm(conn))
+   if (availableDirComm(conn))
       write_dir(conn, msg);
    return conn;
 }
       displayToPrompt(conn);
    } else {
       while (!dircomm->m_at_prompt) {
-         stat=dircomm->read();
+         stat = dircomm->read();
+         if (stat < 0) {
+            break;
+         }
       }
    }
    if (mainWin->m_commDebug) Pmsg2(000, "endDiscardToPrompt=%d %s\n", stat, m_dir->name());
 int Console::notifyOff()
 { 
    int conn = 0;
-   if(availableDirComm(conn))
+   if (availableDirComm(conn))
       notify(conn, false);
    return conn;
 }