pike.git / lib / modules / Sql.pmod / pgsql_util.pmod

version» Context lines:

pike.git/lib/modules/Sql.pmod/pgsql_util.pmod:285:    case sendout:;    }    if(towrite=sizeof(this)) {    PD(">Sendcmd %O\n",((string)this)[..towrite-1]);    towrite-=output_to(socket,towrite);    }    } while(0);    started=0;    return;    }; +  if(pgsqlsess)    pgsqlsess->_connectfail();    }       final void sendterminate() {    destruct(fillread); // Delayed close() after flushing the output buffer    }       final int close() { -  +  destruct(nostash);    return socket->close();    }       protected void destroy() {    catch(close()); // Exceptions don't work inside destructors    pgsqlsess=0;    }       final void connectloop(int nossl) {    mixed err=catch {
pike.git/lib/modules/Sql.pmod/pgsql_util.pmod:343:    break;    }    if(!socket->is_open())    error(strerror(socket->errno()));    socket->set_backend(local_backend);    socket->set_buffer_mode(i::this,0);    socket->set_nonblocking(read_cb,write_cb,0);    Thread.Thread(pgsqlsess->_processloop,this);    return;    }; +  if(pgsqlsess)    pgsqlsess->_connectfail(err);    }       private string _sprintf(int type, void|mapping flags) {    string res=UNDEFINED;    switch(type) {    case 'O':    res=predef::sprintf("PGassist fd: %d input queue: %d/%d "    "queued portals: %d output queue: %d/%d\n",    socket&&socket->query_fd(),
pike.git/lib/modules/Sql.pmod/pgsql_util.pmod:739:    _statuscmdcomplete=UNDEFINED;    }       final void _purgeportal() {    _unnamedportalkey=0;    Thread.MutexKey lock=closemux->lock();    _fetchlimit=0; // disables further Executes    switch(_state) {    case copyinprogress:    case bound: +  _datarows->write(1); // Signal EOF    --pgsqlsess->_portalsinflight;    }    _state=closed;    lock=0;    }       final sctype _closeportal(PGplugbuffer plugbuffer) {    sctype retval=keep;    PD("%O Try Closeportal %d\n",_portalname,_state);    Thread.MutexKey lock=closemux->lock();