pike.git
/
lib
/
modules
/
Sql.pmod
/
pgsql_util.pmod
version
»
Context lines:
10
20
40
80
file
none
3
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();