Author: dteske
Date: Thu Nov  7 10:20:19 2013
New Revision: 257782
URL: http://svnweb.freebsd.org/changeset/base/257782

Log:
  Add global DEBUG_INITIALIZE_FILE environment variable for controlling
  whether the debugFile is truncated upon initialization (useful for when
  children implicitly re-initialize debugging and you want children to
  append to your existing debugFile).

Modified:
  head/usr.sbin/bsdconfig/share/common.subr

Modified: head/usr.sbin/bsdconfig/share/common.subr
==============================================================================
--- head/usr.sbin/bsdconfig/share/common.subr   Thu Nov  7 10:14:40 2013        
(r257781)
+++ head/usr.sbin/bsdconfig/share/common.subr   Thu Nov  7 10:20:19 2013        
(r257782)
@@ -68,6 +68,14 @@ export UNAME_R="$(uname -r)" # Release L
 : ${DEBUG_SELF_INITIALIZE=1}
 
 #
+# Default behavior of f_debug_init() is to truncate $debugFile (set to NULL to
+# disable truncating the debug file when initializing). To get child processes
+# to append to the same log file, export this variarable (with a NULL value)
+# and also export debugFile with the desired value.
+# 
+: ${DEBUG_INITIALIZE_FILE=1}
+
+#
 # Define standard optstring arguments that should be supported by all programs
 # using this include (unless DEBUG_SELF_INITIALIZE is set to NULL to prevent
 # f_debug_init() from autamatically processing "$@" for the below arguments):
@@ -164,13 +172,13 @@ f_debug_init()
        [ "$debugFile" ] && export debugFile
 
        #
-       # Truncate the debug file upon. Note that we will trim a leading plus
-       # (`+') from the value of debugFile to support persistant meaning that
-       # f_dprintf() should print both to standard output and $debugFile
-       # (minus the leading plus, of course).
+       # Truncate debug file unless requested otherwise. Note that we will
+       # trim a leading plus (`+') from the value of debugFile to support
+       # persistant meaning that f_dprintf() should print both to standard
+       # output and $debugFile (minus the leading plus, of course).
        #
        local _debug_file="${debugFile#+}"
-       if [ "$_debug_file" ]; then
+       if [ "$_debug_file" -a "$DEBUG_INITIALIZE_FILE" ]; then
                if ( umask 022 && :> "$_debug_file" ); then
                        f_dprintf "Successfully initialized debugFile \`%s'" \
                                  "$_debug_file"
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to