Fix: Encoding of 3PTY result facility IE
authorAndreas Eversberg <jolly@eversberg.eu>
Sun, 19 Aug 2012 10:33:54 +0000 (12:33 +0200)
committerAndreas Eversberg <jolly@eversberg.eu>
Sun, 16 Dec 2012 09:11:46 +0000 (10:11 +0100)
dss1.cpp

index fe4188a..00bdb06 100644 (file)
--- a/dss1.cpp
+++ b/dss1.cpp
@@ -2327,17 +2327,17 @@ void Pdss1::message_3pty(unsigned int epoint_id, int message_id, union parameter
        if (param->threepty.result) {
                fac.comp = CompReturnResult;
                fac.u.retResult.invokeId = param->threepty.invoke_id;
        if (param->threepty.result) {
                fac.comp = CompReturnResult;
                fac.u.retResult.invokeId = param->threepty.invoke_id;
+               fac.u.retResult.operationValuePresent = 1;
+               if (param->threepty.begin)
+                       fac.u.retResult.operationValue = Fac_Begin3PTY;
+               if (param->threepty.end)
+                       fac.u.retResult.operationValue = Fac_End3PTY;
        }
        if (param->threepty.error) {
                fac.comp = CompReturnError;
                fac.u.retError.invokeId = param->threepty.invoke_id;
                fac.u.retError.errorValue = FacError_Gen_InvalidCallState;
        }
        }
        if (param->threepty.error) {
                fac.comp = CompReturnError;
                fac.u.retError.invokeId = param->threepty.invoke_id;
                fac.u.retError.errorValue = FacError_Gen_InvalidCallState;
        }
-       fac.u.retResult.operationValuePresent = 1;
-       if (param->threepty.begin)
-               fac.u.retResult.operationValue = Fac_Begin3PTY;
-       if (param->threepty.end)
-               fac.u.retResult.operationValue = Fac_End3PTY;
        encodeFac(fac_ie, &fac);
 
        /* sending facility */
        encodeFac(fac_ie, &fac);
 
        /* sending facility */