X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=attribute.c;h=88b394adc7cf37e764153ddbe53d93607aa1e337;hp=b130ab2989a0a3f0e439fe4942d9cdb5387da7a7;hb=045273c289eb3d972eea99df99967f680b06940f;hpb=c2ac39f76d245816a919d94790672fb66e9a7253 diff --git a/attribute.c b/attribute.c index b130ab29..88b394ad 100644 --- a/attribute.c +++ b/attribute.c @@ -71,7 +71,7 @@ static void find_greatest_att_bitnum(void) return; } } while (c--); - PARA_INFO_LOG("%s\n", "no attributes"); + PARA_INFO_LOG("no attributes\n"); greatest_att_bitnum = -E_NO_ATTRIBUTES; } @@ -266,9 +266,7 @@ static int com_setatt_callback(const struct osl_object *query, new_afsi.attributes |= add_mask; new_afsi.attributes &= ~del_mask; save_afsi(&new_afsi, &obj); /* in-place update */ -// ret = mood_update_audio_file(aft_row, &old_afsi); -// if (ret < 0) -// return ret; + // FIXME: Event? } return 1; } @@ -281,6 +279,12 @@ int com_setatt(__a_unused int fd, int argc, char * const * const argv) NULL); } +struct addatt_event_data { + const char *name; + unsigned char bitnum; +}; + + static int com_addatt_callback(const struct osl_object *query, struct osl_object *result) { @@ -411,10 +415,13 @@ int com_mvatt(int fd, int argc, char * const * const argv) return ret; } - +/** Data passed to the action handler of com_rmatt(). */ struct remove_attribute_action_data { + /** Message buffer. */ struct para_buffer pb; + /** Numver of attributes removed. */ int num_removed; + /** Bitwise "or" of the removed attributes. */ uint64_t mask_of_removed_atts; }; @@ -523,8 +530,10 @@ int get_attribute_text(uint64_t *atts, const char *delim, char **text) const uint64_t one = 1; *text = NULL; - if (greatest_att_bitnum < 0) /* no attributes available */ + if (greatest_att_bitnum < 0) { /* no attributes available */ + *text = para_strdup("(no attributes available)"); return 1; + } for (i = 0; i <= greatest_att_bitnum; i++) { unsigned char bn = i; struct osl_object obj = {.data = &bn, .size = 1}; @@ -556,8 +565,6 @@ err: /** * Close the attribute table. * - * \param flags Ususal flags that are passed to osl_close_table(). - * * \sa osl_close_table(). */ void attribute_close(void)