X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fyaz-pdu-assoc-thread.cpp;h=4612ad429d67d7f97f26a474be2f5f4d9a06b5d4;hb=6ed58852b5c17bc8ac4124e916b9167af47db6b7;hp=e48c0512a0f70e660518c392fa36c8a7eb9f4310;hpb=0cc824e02bc2c69986bec8c9dd9ff53f07a0cd3d;p=yazpp-moved-to-github.git diff --git a/src/yaz-pdu-assoc-thread.cpp b/src/yaz-pdu-assoc-thread.cpp index e48c051..4612ad4 100644 --- a/src/yaz-pdu-assoc-thread.cpp +++ b/src/yaz-pdu-assoc-thread.cpp @@ -2,7 +2,7 @@ * Copyright (c) 1998-2004, Index Data. * See the file LICENSE for details. * - * $Id: yaz-pdu-assoc-thread.cpp,v 1.14 2006-03-29 13:14:17 adam Exp $ + * $Id: yaz-pdu-assoc-thread.cpp,v 1.16 2008-01-21 15:57:27 adam Exp $ */ #ifdef WIN32 @@ -82,6 +82,14 @@ void PDU_AssocThread::childNotify(COMSTACK cs) /// Clone PDU Observer new_observable->m_PDU_Observer = m_PDU_Observer->sessionNotify(new_observable, cs_fileno(cs)); + + if (!new_observable->m_PDU_Observer) + { + new_observable->shutdown(); + delete new_observable; + delete socket_observable; + return; + } worker *w = new worker; w->m_assoc = new_observable;