summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
5019824)
- Use get_attribute_bitnum_by_name() instead of open-coding.
- Use new error code E_ATT_TABLE_FULL.
- Move definition of objs[ATTCOL_NAME] down to where it is needed.
- Kill FIXME comment: We can not use find_greatest_att_bitnum() here.
para_printf(&pb, "invalid attribute name: %s\n", p);
continue;
}
para_printf(&pb, "invalid attribute name: %s\n", p);
continue;
}
- objs[ATTCOL_BITNUM].size = 1;
- objs[ATTCOL_NAME].data = p;
- objs[ATTCOL_NAME].size = len + 1;
- ret = osl_get_row(attribute_table, ATTCOL_NAME,
- &objs[ATTCOL_NAME], &row); /* expected to fail FIXME: Use get_attribute_bitnum_by_name() */
+ ret = get_attribute_bitnum_by_name(p, &bitnum);
- para_printf(&pb, "attribute %s already exists\n", p);
+ para_printf(&pb, "attribute \"%s\" already exists\n", p);
continue;
}
if (ret != -E_RB_KEY_NOT_FOUND) /* error */
goto out;
continue;
}
if (ret != -E_RB_KEY_NOT_FOUND) /* error */
goto out;
- /* find smallest non-used attribute FIXME: Use find_greatest_att_bitnum() */
+ objs[ATTCOL_BITNUM].size = 1;
+ /* find smallest unused attribute */
for (bitnum = 0; bitnum < 64; bitnum++) {
objs[ATTCOL_BITNUM].data = &bitnum;
ret = osl_get_row(attribute_table, ATTCOL_BITNUM,
for (bitnum = 0; bitnum < 64; bitnum++) {
objs[ATTCOL_BITNUM].data = &bitnum;
ret = osl_get_row(attribute_table, ATTCOL_BITNUM,
/* this bit is already in use, try next bit */
}
if (bitnum == 64) {
/* this bit is already in use, try next bit */
}
if (bitnum == 64) {
- para_printf(&pb, "attribute table full\n");
+ ret = -E_ATT_TABLE_FULL;
+ objs[ATTCOL_NAME].data = p;
+ objs[ATTCOL_NAME].size = len + 1;
ret = osl_add_row(attribute_table, objs);
if (ret < 0)
goto out;
ret = osl_add_row(attribute_table, objs);
if (ret < 0)
goto out;