LINUX.ORG.RU

История изменений

Исправление firkax, (текущая версия) :

У меня другие вопросы:

1) какого типа FmSymbol.value_size ?

2) есть ли надёжных ограничитель диапазона его значений? if() с ранним выходом по ошибке или ассерт если оно не предполагается вообще

int fm_symbol_compare_fast(FmSymbol *s1, FmSymbol *s2) {
    if(s1==s2) return 0;
    if(!s1) return -1;
    if(!s2) return 1;
    if(s1->value_size<s2->value_size) return -1;
    if(s1->value_size>s2->value_size) return 1;
    return memcmp(s1->value, s2->value, s1->value_size);
}

Исходная версия firkax, :

У меня другие вопросы: 1) какого типа FmSymbol.value_size ? 2) есть ли надёжных ограничитель диапазона его значений? if() с ранним выходом по ошибке или ассерт если оно не предполагается вообще

int fm_symbol_compare_fast(FmSymbol *s1, FmSymbol *s2) {
    if(s1==s2) return 0;
    if(!s1) return -1;
    if(!s2) return 1;
    if(s1->value_size<s2->value_size) return -1;
    if(s1->value_size>s2->value_size) return 1;
    return memcmp(s1->value, s2->value, s1->value_size);
}