prepare_ls_row));
if (ret < 0)
goto out;
- if (!opts->num_matching_paths)
+ if (opts->num_matching_paths == 0) {
+ if (opts->num_patterns > 0)
+ para_printf(&b, "no matches\n");
goto out;
+ }
ret = sort_matching_paths(opts);
if (ret < 0)
goto out;
struct com_touch_options *cto;
/** Message buffer. */
struct para_buffer pb;
- /** How many audio files matched the given pattern. */
- unsigned num_matches;
};
static int touch_audio_file(__a_unused struct osl_table *table,
if (tad->cto->amp >= 0)
new_afsi.amp = tad->cto->amp;
}
- tad->num_matches++;
save_afsi(&new_afsi, &obj); /* in-place update */
aced.aft_row = row;
aced.old_afsi = &old_afsi;
ret = for_each_matching_row(&pmd);
if (ret < 0)
ret2 = para_printf(&tad.pb, "%s\n", para_strerror(-ret));
- else
- if (!tad.num_matches)
- ret2 = para_printf(&tad.pb, "no matches\n");
+ else if (pmd.num_matches == 0)
+ ret2 = para_printf(&tad.pb, "no matches\n");
if (ret2 >= 0 && tad.pb.offset)
pass_buffer_as_shm(tad.pb.buf, tad.pb.offset, &fd);
free(tad.pb.buf);
uint32_t flags;
/** Message buffer. */
struct para_buffer pb;
- /** Number of audio files removed. */
- unsigned num_removed;
};
static int remove_audio_file(__a_unused struct osl_table *table,
ret = osl(osl_del_row(audio_file_table, row));
if (ret < 0)
para_printf(&crd->pb, "%s: %s\n", name, para_strerror(-ret));
- else
- crd->num_removed++;
return ret;
}
para_printf(&crd.pb, "%s\n", para_strerror(-ret));
return;
}
- if (!crd.num_removed && !(crd.flags & RM_FLAG_FORCE))
+ if ((pmd.num_matches == 0) && !(crd.flags & RM_FLAG_FORCE))
ret = para_printf(&crd.pb, "no matches -- nothing removed\n");
- else {
- if (crd.flags & RM_FLAG_VERBOSE)
- ret = para_printf(&crd.pb, "removed %u files\n", crd.num_removed);
+ else if (crd.flags & RM_FLAG_VERBOSE) {
+ ret = para_printf(&crd.pb, "removed %u files\n",
+ pmd.num_matches);
}
if (ret >= 0 && crd.pb.offset)
pass_buffer_as_shm(crd.pb.buf, crd.pb.offset, &fd);
struct cpsi_action_data {
/** command line flags (see \ref cpsi_flags). */
unsigned flags;
- /** Number of audio files changed. */
- unsigned num_copied;
/** Message buffer. */
struct para_buffer pb;
/** Values are copied from here. */
if (cad->flags & CPSI_FLAG_COPY_ATTRIBUTES)
target_afsi.attributes = cad->source_afsi.attributes;
save_afsi(&target_afsi, &target_afsi_obj); /* in-place update */
- cad->num_copied++;
if (cad->flags & CPSI_FLAG_VERBOSE) {
ret = para_printf(&cad->pb, "copied afsi to %s\n", name);
if (ret < 0)
if (ret < 0)
para_printf(&cad.pb, "%s\n", para_strerror(-ret));
else if (cad.flags & CPSI_FLAG_VERBOSE) {
- if (cad.num_copied)
+ if (pmd.num_matches > 0)
para_printf(&cad.pb, "copied requested afsi from %s "
- "to %u files\n", source_path, cad.num_copied);
+ "to %u files\n", source_path, pmd.num_matches);
else
para_printf(&cad.pb, "nothing copied\n");
}