Browse Source

core: improve error message related to a mismatch of #!ifdef/#!define statement

Henning Westerholt 6 years ago
parent
commit
ed10d7692b
1 changed files with 7 additions and 2 deletions
  1. 7 2
      src/core/ppcfg.c

+ 7 - 2
src/core/ppcfg.c

@@ -219,8 +219,13 @@ void pp_ifdef_level_update(int val)
 void pp_ifdef_level_check(void)
 {
 	if(_pp_ifdef_level!=0) {
-		LM_WARN("different number of preprocessor directives:"
-				" N(#!IF[N]DEF) - N(#!ENDIF) = %d\n", _pp_ifdef_level);
+		if (_pp_ifdef_level > 0) {
+	                LM_WARN("different number of preprocessor directives:"
+				" %d more #!if[n]def as #!endif\n", _pp_ifdef_level);
+		} else {
+			LM_WARN("different number of preprocessor directives:"
+				" %d more #!endif as #!if[n]def\n", (_pp_ifdef_level)*-1);
+		}
 	} else {
 		LM_DBG("same number of pairing preprocessor directives"
 			" #!IF[N]DEF - #!ENDIF\n");