projects
/
paraslash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change default loglevel for para_fsck from 4 to 3.
[paraslash.git]
/
attribute.c
diff --git
a/attribute.c
b/attribute.c
index cc810467d825acf860346afeaac035aaf496f665..5f7188ee30b58ee84f5800d7059cbfb014e8c09a 100644
(file)
--- a/
attribute.c
+++ b/
attribute.c
@@
-304,18
+304,15
@@
static int com_addatt_callback(const struct osl_object *query,
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);
if (ret >= 0) {
if (ret >= 0) {
- 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,
@@
-327,9
+324,11
@@
static int com_addatt_callback(const struct osl_object *query,
/* 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
;
goto out;
}
goto out;
}
+ 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;