f_bTestIsRunning = FALSE;
f_bTestIsRunning = CU_FALSE;
CU_ErrorCode CU_run_all_tests(void){  CU_pTestRegistry pRegistry = CU_get_registry();  CU_pSuite pSuite = NULL;  CU_ErrorCode result;  CU_ErrorCode result2;  CU_set_error(result = CUE_SUCCESS);  if (!pRegistry) {    CU_set_error(result = CUE_NOREGISTRY);  }  else {    /* test run is starting - set flag */    f_bTestIsRunning = TRUE;    /* Clear results from the previous run */    clear_previous_results(&f_run_summary, &f_failure_list);    pSuite = pRegistry->pSuite;    while (pSuite && (!result || (CU_get_error_action() == CUEA_IGNORE))) {      /* if the suite has tests, run it */      if (pSuite->uiNumberOfTests) {        result2 = run_single_suite(pSuite, &f_run_summary);        result = (CUE_SUCCESS == result) ? result2 : result;  /* result = 1st error encountered */      }      pSuite = pSuite->pNext;    }    /* test run is complete - clear flag */    f_bTestIsRunning = FALSE;    if (f_pAllTestsCompleteMessageHandler)     (*f_pAllTestsCompleteMessageHandler)(f_failure_list);  }  return result;}