示例#1
0
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));
}
示例#2
0
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;
}