]> rtime.felk.cvut.cz Git - arc.git/blobdiff - diagnostic/Dcm/Dcm_Dsl.c
Dcm, Fixed problem in read / write memory functions (refactored) that made it inpossi...
[arc.git] / diagnostic / Dcm / Dcm_Dsl.c
index a9798e5a40b50198339c352dbf430ce9d27efd46..caca1aa53cfb9d8363eec171013ab6ff3aa54dac 100644 (file)
@@ -417,8 +417,9 @@ void DslInit(void) {
 //     Implements 'void DslInternal_ResponseOnOneDataByPeriodicId(uint8 PericodID)' for simulator a periodic did data.\r
 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\r
 \r
-void DslInternal_ResponseOnOneDataByPeriodicId(uint8 PericodID)\r
+Std_ReturnType DslInternal_ResponseOnOneDataByPeriodicId(uint8 PericodID)\r
 {\r
+       Std_ReturnType ret = E_NOT_OK;\r
        const Dcm_DslProtocolRowType *protocolRowEntry;\r
        Dcm_DslRunTimeProtocolParametersType *runtime = NULL;\r
     PduInfoType  *pPeriodData;\r
@@ -428,16 +429,24 @@ void DslInternal_ResponseOnOneDataByPeriodicId(uint8 PericodID)
        runtime = protocolRowEntry->DslRunTimeProtocolParameters;\r
         if(runtime != NULL)    // find the runtime\r
         {\r
-               DslProvideRxBufferToPdur(runtime->diagReqestRxPduId, 3, (const PduInfoType **)&pPeriodData);\r
-            pPeriodData->SduDataPtr[0] = 0x2a;\r
-            pPeriodData->SduDataPtr[1] = 0;\r
-            pPeriodData->SduDataPtr[2] = PericodID;\r
-            pPeriodData->SduLength = 3;\r
-            DslRxIndicationFromPduR(0, NTFRSLT_OK);\r
-                       break;\r
+               if( BUFREQ_OK == DslProvideRxBufferToPdur(runtime->diagReqestRxPduId, 3, (const PduInfoType **)&pPeriodData)){\r
+                pPeriodData->SduDataPtr[0] = 0x2a;\r
+                pPeriodData->SduDataPtr[1] = 0;\r
+                pPeriodData->SduDataPtr[2] = PericodID;\r
+                pPeriodData->SduLength = 3;\r
+                DslRxIndicationFromPduR(0, NTFRSLT_OK);\r
+                ret = E_OK;\r
+                       break;\r
+               }\r
+               else {\r
+                       ret = E_NOT_OK;\r
+               }\r
+\r
                }\r
        protocolRowEntry++;\r
        }\r
+\r
+       return ret;\r
 }\r
 \r
 \r