From 6f0288bcd4c3087fdcdeda7aa693707bf9f4572d Mon Sep 17 00:00:00 2001 From: Richard Frith-MacDonald Date: Sun, 31 May 2015 10:12:04 +0000 Subject: [PATCH] sync with NSLog() git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/ec/trunk@38594 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 5 +++++ EcLogger.m | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/ChangeLog b/ChangeLog index 2d5d09c..24e9660 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-05-31 Richard Frith-Macdonald + + * EcLogger.m: When logging to stderr, use lock to synchronise with + logs produced by gnustep-base NSLog(). + 2015-05-29 Richard Frith-Macdonald * EcAlarmSinkSNMP.m: log SNMP errors via the main logging mechanism diff --git a/EcLogger.m b/EcLogger.m index 271f4d7..28b8331 100644 --- a/EcLogger.m +++ b/EcLogger.m @@ -234,7 +234,17 @@ static NSArray *modes; { buf = [str dataUsingEncoding: NSUTF8StringEncoding]; } +#if defined(GNUSTEP_BASE_LIBRARY) + { + NSRecursiveLock *l = GSLogLock(); + + [l lock]; + fwrite([buf bytes], 1, [buf length], stderr); + [l unlock]; + } +#else fwrite([buf bytes], 1, [buf length], stderr); +#endif if (LT_DEBUG != type) { if (nil == serverName)