This is an automated email from the ASF dual-hosted git repository.
swebb2066 pushed a commit to branch next_stable
in repository https://gitbox.apache.org/repos/asf/logging-log4cxx.git
The following commit(s) were added to refs/heads/next_stable by this push:
new d334b383 Fix sonic cloud bugs (#123)
d334b383 is described below
commit d334b3835f2822defeca312fc81d4342dda5c927
Author: Stephen Webb <[email protected]>
AuthorDate: Sat Sep 10 14:18:13 2022 +1000
Fix sonic cloud bugs (#123)
* Stop catching InterruptedException which is no longer thrown. Use
std::lock_guard when requiring a simple scope guard
* Prevent Sonic Cloud reporting a possible bug
---
src/main/cpp/asyncappender.cpp | 30 ++++++------------------------
src/main/cpp/socketappenderskeleton.cpp | 5 -----
src/main/cpp/syslogappender.cpp | 2 +-
3 files changed, 7 insertions(+), 30 deletions(-)
diff --git a/src/main/cpp/asyncappender.cpp b/src/main/cpp/asyncappender.cpp
index 2a0cf68a..15d94739 100644
--- a/src/main/cpp/asyncappender.cpp
+++ b/src/main/cpp/asyncappender.cpp
@@ -15,9 +15,6 @@
* limitations under the License.
*/
-#if defined(_MSC_VER)
- #pragma warning ( disable: 4231 4251 4275 4786 )
-#endif
#include <log4cxx/asyncappender.h>
@@ -256,22 +253,11 @@ void AsyncAppender::append(const spi::LoggingEventPtr&
event, Pool& p)
bool discard = true;
if (priv->blocking
- //&& !Thread::interrupted()
+ && !priv->closed
&& (priv->dispatcher.get_id() !=
std::this_thread::get_id()) )
{
- try
- {
- priv->bufferNotFull.wait(lock);
- discard = false;
- }
- catch (InterruptedException&)
- {
- //
- // reset interrupt status so
- // calling code can see interrupt on
- // their next wait or sleep.
- //Thread::currentThreadInterrupt();
- }
+ priv->bufferNotFull.wait(lock);
+ discard = false;
}
//
@@ -303,7 +289,7 @@ void AsyncAppender::append(const spi::LoggingEventPtr&
event, Pool& p)
void AsyncAppender::close()
{
{
- std::unique_lock<std::mutex> lock(priv->bufferMutex);
+ std::lock_guard<std::mutex> lock(priv->bufferMutex);
priv->closed = true;
priv->bufferNotEmpty.notify_all();
priv->bufferNotFull.notify_all();
@@ -379,7 +365,7 @@ void AsyncAppender::setBufferSize(int size)
throw IllegalArgumentException(LOG4CXX_STR("size argument must
be non-negative"));
}
- std::unique_lock<std::mutex> lock(priv->bufferMutex);
+ std::lock_guard<std::mutex> lock(priv->bufferMutex);
priv->bufferSize = (size < 1) ? 1 : size;
priv->bufferNotFull.notify_all();
}
@@ -391,7 +377,7 @@ int AsyncAppender::getBufferSize() const
void AsyncAppender::setBlocking(bool value)
{
- std::unique_lock<std::mutex> lock(priv->bufferMutex);
+ std::lock_guard<std::mutex> lock(priv->bufferMutex);
priv->blocking = value;
priv->bufferNotFull.notify_all();
}
@@ -508,10 +494,6 @@ void AsyncAppender::dispatch()
}
}
}
- catch (InterruptedException&)
- {
- //Thread::currentThreadInterrupt();
- }
catch (...)
{
}
diff --git a/src/main/cpp/socketappenderskeleton.cpp
b/src/main/cpp/socketappenderskeleton.cpp
index 544d033d..67e607c3 100644
--- a/src/main/cpp/socketappenderskeleton.cpp
+++ b/src/main/cpp/socketappenderskeleton.cpp
@@ -179,11 +179,6 @@ void SocketAppenderSkeleton::monitor()
return;
}
}
- catch (InterruptedException&)
- {
- LogLog::debug(LOG4CXX_STR("Connector interrupted.
Leaving loop."));
- return;
- }
catch (ConnectException&)
{
LogLog::debug(LOG4CXX_STR("Remote host ")
diff --git a/src/main/cpp/syslogappender.cpp b/src/main/cpp/syslogappender.cpp
index 9e8f398a..1de82236 100644
--- a/src/main/cpp/syslogappender.cpp
+++ b/src/main/cpp/syslogappender.cpp
@@ -316,7 +316,7 @@ void SyslogAppender::append(const spi::LoggingEventPtr&
event, Pool& p)
it++, current++ )
{
char buf[12];
- apr_snprintf( buf, sizeof(buf), "(%d/%d)", current,
packets.size() );
+ apr_snprintf( buf, sizeof(buf), "(%d/%d)", current,
(int)packets.size() );
LOG4CXX_DECODE_CHAR(str, buf);
it->append( str );
}