@@ -983,7 +983,7 @@ public static ConfigNode ModifyNode(IBasicLogger log, NodeStack original, Config
983983 string tag = "" ;
984984 string nodeType , nodeName ;
985985 int index = 0 ;
986- string logspam_msg = "" ;
986+ List < string > logspam_msg = new List < string > ( ) ;
987987 List < ConfigNode > subNodes = new List < ConfigNode > ( ) ;
988988
989989 // three ways to specify:
@@ -1034,7 +1034,7 @@ public static ConfigNode ModifyNode(IBasicLogger log, NodeStack original, Config
10341034 }
10351035 }
10361036 else
1037- logspam_msg += " cannot wildcard a % node: " + subMod . name + " \n " ;
1037+ logspam_msg . Add ( " cannot wildcard a % node: " + subMod . name ) ;
10381038 }
10391039 else
10401040 {
@@ -1049,15 +1049,15 @@ public static ConfigNode ModifyNode(IBasicLogger log, NodeStack original, Config
10491049 // if the original exists modify it
10501050 if ( subNodes . Count > 0 )
10511051 {
1052- logspam_msg += " Applying subnode " + subMod . name + " \n " ;
1052+ logspam_msg . Add ( " Applying subnode " + subMod . name ) ;
10531053 ConfigNode newSubNode = ModifyNode ( log , nodeStack . Push ( subNodes [ 0 ] ) , subMod , context ) ;
10541054 subNodes [ 0 ] . ShallowCopyFrom ( newSubNode ) ;
10551055 subNodes [ 0 ] . name = newSubNode . name ;
10561056 }
10571057 else
10581058 {
10591059 // if not add the mod node without the % in its name
1060- logspam_msg += " Adding subnode " + subMod . name + " \n " ;
1060+ logspam_msg . Add ( " Adding subnode " + subMod . name ) ;
10611061
10621062 ConfigNode copy = new ConfigNode ( nodeType ) ;
10631063
@@ -1072,7 +1072,7 @@ public static ConfigNode ModifyNode(IBasicLogger log, NodeStack original, Config
10721072 {
10731073 if ( subNodes . Count == 0 )
10741074 {
1075- logspam_msg += " Adding subnode " + subMod . name + " \n " ;
1075+ logspam_msg . Add ( " Adding subnode " + subMod . name ) ;
10761076
10771077 ConfigNode copy = new ConfigNode ( nodeType ) ;
10781078
@@ -1087,11 +1087,11 @@ public static ConfigNode ModifyNode(IBasicLogger log, NodeStack original, Config
10871087 {
10881088 // find each original subnode to modify, modify it and add the modified.
10891089 if ( subNodes . Count == 0 ) // no nodes to modify!
1090- logspam_msg += " Could not find node(s) to modify: " + subMod . name + " \n " ;
1090+ logspam_msg . Add ( " Could not find node(s) to modify: " + subMod . name ) ;
10911091
10921092 foreach ( ConfigNode subNode in subNodes )
10931093 {
1094- logspam_msg += " Applying subnode " + subMod . name + " \n " ;
1094+ logspam_msg . Add ( " Applying subnode " + subMod . name ) ;
10951095 ConfigNode newSubNode ;
10961096 switch ( command )
10971097 {
@@ -1118,7 +1118,7 @@ public static ConfigNode ModifyNode(IBasicLogger log, NodeStack original, Config
11181118 }
11191119 }
11201120 }
1121- log . Trace ( logspam_msg ) ;
1121+ log . Trace ( String . Join ( " \n " , logspam_msg . ToArray ( ) ) ) ; //FIXME: This is wasting a lot of CPU when Trace is deactivated!
11221122 }
11231123 }
11241124
0 commit comments