List Info

Thread: svn commit: r654848 - in /logging/log4cxx/trunk/src: changes/changes.xml main/cpp/socketappenderskel




svn commit: r654848 - in /logging/log4cxx/trunk/src: changes/changes.xml main/cpp/socketappenderskel
user name
2008-05-09 10:13:15
Author: carnold
Date: Fri May  9 08:13:15 2008
New Revision: 654848

URL: 
http://svn.apache.org/viewvc?rev=654848&view=rev
Log:
LOGCXX-278: Threads for reconnecting sockets do not end
cleanly when program exits

Modified:
    logging/log4cxx/trunk/src/changes/changes.xml
   
logging/log4cxx/trunk/src/main/cpp/socketappenderskeleton.cp
p

Modified: logging/log4cxx/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/logging/log4cxx/
trunk/src/changes/changes.xml?rev=654848&r1=654847&r
2=654848&view=diff
============================================================
==================
--- logging/log4cxx/trunk/src/changes/changes.xml
(original)
+++ logging/log4cxx/trunk/src/changes/changes.xml Fri May  9
08:13:15 2008
 -32,6
+32,7 
 <action issue="LOGCXX-272">Apache log4cxx
0.10.1 release</action>
 <action issue="LOGCXX-275">Headers cannot
be included with very strict warning
settings</action>
 <action issue="LOGCXX-277">Reconnection not
working for sockets</action>
+<action issue="LOGCXX-278">Threads for
reconnecting sockets do not end cleanly when program
exits</action>
 <action issue="LOGCXX-280">tests and sample
code unnecessarily compiled during default make
target</action>
 <action issue="LOGCXX-281">Sun Studio 11
reports function hides base virtual function
warning</action>
 </release>

Modified:
logging/log4cxx/trunk/src/main/cpp/socketappenderskeleton.cp
p
URL: http://svn.apache.org/viewvc/
logging/log4cxx/trunk/src/main/cpp/socketappenderskeleton.cp
p?rev=654848&r1=654847&r2=654848&view=diff
============================================================
==================
---
logging/log4cxx/trunk/src/main/cpp/socketappenderskeleton.cp
p (original)
+++
logging/log4cxx/trunk/src/main/cpp/socketappenderskeleton.cp
p Fri May  9 08:13:15 2008
 -79,6
+79,7 
     closed = true;
     cleanUp(pool);
     thread.interrupt();
+    thread.join();
 }
 
 void SocketAppenderSkeleton::connect(Pool& p) {
 -144,12
+145,14 
                 try
                 {
                        
Thread::sleep(socketAppender->reconnectionDelay);
-                       
LogLog::debug(LogString(LOG4CXX_STR("Attempting
connection to "))
+                        if(!socketAppender->closed) {
+                           
LogLog::debug(LogString(LOG4CXX_STR("Attempting
connection to "))
                                 +
socketAppender->address->getHostName());
-                        socket = new
Socket(socketAppender->address,
socketAppender->port);
-                        Pool p;
-                       
socketAppender->setSocket(socket, p);
-                       
LogLog::debug(LOG4CXX_STR("Connection established.
Exiting connector thread."));
+                            socket = new
Socket(socketAppender->address,
socketAppender->port);
+                            Pool p;
+                           
socketAppender->setSocket(socket, p);
+                           
LogLog::debug(LOG4CXX_STR("Connection established.
Exiting connector thread."));
+                        }
                         return NULL;
                 }
                 catch(ConnectException&)



[1]

about | contact  Other archives ( Real Estate discussion Medical topics )