mirror of
https://github.com/gnustep/libs-ec.git
synced 2025-02-22 19:31:53 +00:00
Partial implementation of KillDebugOutput option
This commit is contained in:
parent
f981f77b4a
commit
6d4a8e0ef0
1 changed files with 15 additions and 3 deletions
18
EcProcess.m
18
EcProcess.m
|
@ -51,7 +51,6 @@
|
||||||
#import <GNUstepBase/GSObjCRuntime.h>
|
#import <GNUstepBase/GSObjCRuntime.h>
|
||||||
#import <GNUstepBase/NSObject+GNUstepBase.h>
|
#import <GNUstepBase/NSObject+GNUstepBase.h>
|
||||||
|
|
||||||
|
|
||||||
#import "EcProcess.h"
|
#import "EcProcess.h"
|
||||||
#import "EcLogger.h"
|
#import "EcLogger.h"
|
||||||
#import "EcAlarm.h"
|
#import "EcAlarm.h"
|
||||||
|
@ -243,6 +242,7 @@ static BOOL cmdFlagDaemon = NO;
|
||||||
static BOOL cmdFlagTesting = NO;
|
static BOOL cmdFlagTesting = NO;
|
||||||
static BOOL cmdIsRunning = NO;
|
static BOOL cmdIsRunning = NO;
|
||||||
static BOOL cmdKeepStderr = NO;
|
static BOOL cmdKeepStderr = NO;
|
||||||
|
static BOOL cmdKillDebug = NO;
|
||||||
static NSString *cmdBase = nil;
|
static NSString *cmdBase = nil;
|
||||||
static NSString *cmdInst = nil;
|
static NSString *cmdInst = nil;
|
||||||
static NSString *cmdName = nil;
|
static NSString *cmdName = nil;
|
||||||
|
@ -1609,8 +1609,11 @@ findMode(NSDictionary* d, NSString* s)
|
||||||
|
|
||||||
/* See if we should keep stderr separate, or merge it with
|
/* See if we should keep stderr separate, or merge it with
|
||||||
* our debug output (the default).
|
* our debug output (the default).
|
||||||
|
* In addition, we can kill debug output (and standard error
|
||||||
|
* if it's not kept separate) by sending it to /dev/null
|
||||||
*/
|
*/
|
||||||
cmdKeepStderr = [cmdDefs boolForKey: @"KeepStandardError"];
|
cmdKeepStderr = [cmdDefs boolForKey: @"KeepStandardError"];
|
||||||
|
cmdKillDebug = [cmdDefs boolForKey: @"KillDebugOutput"];
|
||||||
|
|
||||||
if (nil == noNetConfig)
|
if (nil == noNetConfig)
|
||||||
{
|
{
|
||||||
|
@ -2281,8 +2284,17 @@ static NSString *noFiles = @"No log files to archive";
|
||||||
[self ecUnLock];
|
[self ecUnLock];
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
* As a special case, if this is the default debug file
|
if (YES == cmdKillDebug && [name isEqual: cmdDebugName] == YES)
|
||||||
|
{
|
||||||
|
const char *msg = "Logging suppressed by KillDebugOutput=YES\n";
|
||||||
|
|
||||||
|
[hdl writeData: [NSData dataWithBytes: msg length: strlen(msg)]];
|
||||||
|
[hdl closeFile];
|
||||||
|
hdl = [NSFileHandle fileHandleWithNullDevice];
|
||||||
|
}
|
||||||
|
|
||||||
|
/* As a special case, if this is the default debug file
|
||||||
* we must set it up to write to stderr.
|
* we must set it up to write to stderr.
|
||||||
*/
|
*/
|
||||||
if (NO == cmdKeepStderr && [name isEqual: cmdDebugName] == YES)
|
if (NO == cmdKeepStderr && [name isEqual: cmdDebugName] == YES)
|
||||||
|
|
Loading…
Reference in a new issue