diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml new file mode 100644 index 0000000..c58b1b0 --- /dev/null +++ b/.github/workflows/cla.yml @@ -0,0 +1,20 @@ +name: "CLA" + +permissions: + contents: read + pull-requests: write + actions: write + statuses: write + +on: + issue_comment: + types: [created] + pull_request_target: + types: [opened, closed, synchronize] + +jobs: + CLA-Lite: + name: "Signature" + uses: rdkcentral/cmf-actions/.github/workflows/cla.yml@v1 + secrets: + PERSONAL_ACCESS_TOKEN: ${{ secrets.CLA_ASSISTANT }} diff --git a/rdkperf/rdk_perf.cpp b/rdkperf/rdk_perf.cpp index 7b8c21b..37bb00e 100644 --- a/rdkperf/rdk_perf.cpp +++ b/rdkperf/rdk_perf.cpp @@ -209,20 +209,30 @@ static void PerfModuleInit() // using __attribute__((destructor)) static void PerfModuleTerminate() { + if(s_timer != NULL) { + s_timer->StopTask(); + } + pid_t pID = getpid(); LOG(eWarning, "RDK Performance process terminate %X\n", pID); + +#if 0 // No need to print report on process exit // Print report RDKPerf_ReportProcess(pID); +#endif + // Remove prosess from list RDKPerf_RemoveProcess(pID); + // Wait for timer thread cleanup if(s_thread != NULL && s_thread->joinable()) { LOG(eWarning, "Cleaning up timer thread\n"); - s_timer->StopTask(); s_thread->join(); + delete s_thread; - delete s_timer; + if(s_timer != NULL) delete s_timer; + s_thread = NULL; s_timer = NULL; }