void kr_ddi_init(T_KRDDI *ptDDI) { /*initialize first*/ ptDDI->eValueInd = KR_VALUE_UNSET; kr_hashtable_remove_all(ptDDI->ptRelated); /*string comes from kr_strdup, need kr_free*/ if (ptDDI->eValueType == KR_TYPE_STRING) kr_free(ptDDI->uValue.s); memset(&ptDDI->uValue, 0x00, sizeof(ptDDI->uValue)); }
int kr_data_check(T_KRData *ptData, T_KRParam *ptParam) { /*check item table*/ if (ptData->tConstructTime != kr_param_load_time(ptParam)) { KR_LOG(KR_LOGDEBUG, "reload ...[%ld][%ld]", ptData->tConstructTime, kr_param_load_time(ptParam)); kr_hashtable_remove_all(ptData->ptItemTable); if (kr_data_item_load(ptData, ptParam) != 0) { KR_LOG(KR_LOGERROR, "reload item table error!"); return -1; } } return 0; }