--- deliantra/server/common/object.c 2006/02/22 18:53:48 1.3 +++ deliantra/server/common/object.c 2006/05/29 15:28:24 1.5 @@ -215,22 +215,22 @@ if (QUERY_FLAG(ob1, FLAG_APPLIED) || QUERY_FLAG(ob2, FLAG_APPLIED)) return 0; + switch (ob1->type) { + case SCROLL: + if (ob1->level != ob2->level) return 0; + break; + + } if (ob1->key_values != NULL || ob2->key_values != NULL) { /* At least one of these has key_values. */ if ((ob1->key_values == NULL) != (ob2->key_values == NULL)) { /* One has fields, but the other one doesn't. */ return 0; - } else { - return compare_ob_value_lists(ob1, ob2); + } else if (!compare_ob_value_lists(ob1, ob2)) { + return 0; } } - switch (ob1->type) { - case SCROLL: - if (ob1->level != ob2->level) return 0; - break; - - } /* Everything passes, must be OK. */ return 1; } @@ -2727,8 +2727,6 @@ int set_ob_key_value_s(object * op, const char * canonical_key, const char * value, int add_key) { key_value * field = NULL, *last=NULL; - LOG(llevDebug, "set_ob_value_s: '%s' '%s' %d\n", canonical_key, value, add_key); - for (field=op->key_values; field != NULL; field=field->next) { if (field->key != canonical_key) { last = field;