Added display of current active TEI values (L2) at lcradmin.
[lcr.git] / cause.c
diff --git a/cause.c b/cause.c
index 42fdb29..c021f21 100644 (file)
--- a/cause.c
+++ b/cause.c
@@ -9,10 +9,13 @@
 **                                                                           **
 \*****************************************************************************/ 
 
-#include "stdio.h"
-#include "sys/types.h"
-#include "string.h"
-#include "main.h"
+#include <stdio.h>
+#include <stdarg.h>
+#include <string.h>
+#include <stdlib.h>
+#include "macro.h"
+#include "cause.h"
+#include "extension.h"
 
 struct isdn_cause isdn_cause[128] = {
                        /********************************* - **/ /*38*/
@@ -405,9 +408,14 @@ void collect_cause(int *multicause, int *multilocation, int newcause, int newloc
                *multicause = newcause;
                *multilocation = newlocation;
        } else
-       if (newcause==CAUSE_NOUSER && *multicause==CAUSE_NOUSER) /* cause 18, but no cause yet, use the location */
+       if (newcause==CAUSE_NOUSER && *multicause==CAUSE_NOUSER) /* cause 18, use the location */
        {
                *multilocation = newlocation;
+       } else
+       if (*multicause==0) /* no cause yet, use newcause (should be 18) */
+       {
+               *multicause = newcause;
+               *multilocation = newlocation;
        }
 }