Author: rfm
Date: Tue Jul 14 19:58:33 2015
New Revision: 38790

URL: http://svn.gna.org/viewcvs/gnustep?rev=38790&view=rev
Log:
Use NSLog to produce local output

Modified:
    libs/ec/trunk/EcLogger.h
    libs/ec/trunk/EcLogger.m

Modified: libs/ec/trunk/EcLogger.h
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/ec/trunk/EcLogger.h?rev=38790&r1=38789&r2=38790&view=diff
==============================================================================
--- libs/ec/trunk/EcLogger.h    (original)
+++ libs/ec/trunk/EcLogger.h    Tue Jul 14 19:58:33 2015
@@ -63,7 +63,7 @@
   NSString             *serverName;
   BOOL                 inFlush;
   BOOL                  externalFlush;
-  BOOL                 registered;
+  BOOL                 shouldForward;
   BOOL                 pendingFlush;
 }
 

Modified: libs/ec/trunk/EcLogger.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/ec/trunk/EcLogger.m?rev=38790&r1=38789&r2=38790&view=diff
==============================================================================
--- libs/ec/trunk/EcLogger.m    (original)
+++ libs/ec/trunk/EcLogger.m    Tue Jul 14 19:58:33 2015
@@ -87,6 +87,10 @@
       logger->interval = 10.0;
       logger->size = 8 * 1024;
       logger->message = [[NSMutableString alloc] initWithCapacity: 2048];
+      if (LT_ERROR == t || LT_AUDIT == t || LT_ALERT == t)
+        {
+          logger->shouldForward = YES;
+        }
 
       [[NSNotificationCenter defaultCenter]
        addObserver: logger
@@ -181,7 +185,11 @@
   NSMutableString      *s = [NSMutableString stringWithCapacity: 256];
 
   [lock lock];
-  if (size == 0)
+  if (NO == shouldForward)
+    {
+      [s appendFormat: @"%@ output via NSLog only.\n", key];
+    }
+  else if (size == 0)
     {
       [s appendFormat: @"%@ output is immediate.\n", key];
     }
@@ -227,24 +235,7 @@
   if (nil != str)
     {
       BOOL     ok = YES;
-      NSData   *buf;
-
-      buf = [str dataUsingEncoding: [NSString defaultCStringEncoding]];
-      if (buf == nil)
-        {
-          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)
@@ -482,38 +473,46 @@
 
 - (void) log: (NSString*)fmt arguments: (va_list)args
 {
-  CREATE_AUTORELEASE_POOL(arp);
   NSString     *format;
-  NSString     *text;
-  BOOL          shouldFlush = NO;
-
-  format = cmdLogFormat(type, fmt);
-  text = [NSString stringWithFormat: format arguments: args];
-
-  [lock lock];
-  if (message == nil)
-    {
-      message = [[NSMutableString alloc] initWithCapacity: 1024];
-    }
-  [message appendString: text];
-  if ([message length] >= size || (interval > 0.0 && timer == nil))
-    {
-      if (NO == pendingFlush)
+
+  format = [[NSString alloc] initWithFormat: @"%@ - %@", cmdLogKey(type), fmt];
+  NSLogv(format, args);
+  RELEASE(format);
+
+  if (YES == shouldForward)
+    {
+      CREATE_AUTORELEASE_POOL(arp);
+      NSString  *text;
+      BOOL      shouldFlush = NO;
+
+      format = cmdLogFormat(type, fmt);
+      text = [NSString stringWithFormat: format arguments: args];
+
+      [lock lock];
+      if (message == nil)
         {
-          shouldFlush = YES;
-          pendingFlush = YES;
+          message = [[NSMutableString alloc] initWithCapacity: 1024];
         }
-    }
-  [lock unlock];
-
-  if (YES == shouldFlush)
-    {
-      [self performSelectorOnMainThread: @selector(_scheduleFlush:)
-                             withObject: nil
-                          waitUntilDone: NO
-                                  modes: modes];
-    }
-  RELEASE(arp);
+      [message appendString: text];
+      if ([message length] >= size || (interval > 0.0 && timer == nil))
+        {
+          if (NO == pendingFlush)
+            {
+              shouldFlush = YES;
+              pendingFlush = YES;
+            }
+        }
+      [lock unlock];
+
+      if (YES == shouldFlush)
+        {
+          [self performSelectorOnMainThread: @selector(_scheduleFlush:)
+                                 withObject: nil
+                              waitUntilDone: NO
+                                      modes: modes];
+        }
+      RELEASE(arp);
+    }
 }
 
 /* Should only be called on main thread.


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to