X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=aft.c;h=2b7a7af7efaa8d8fb72b55eb48616103c04cf1eb;hb=9a4a139a9c57420e1bd4b96000985cbfa841782d;hp=51703aa4583ace19696db9e317e9135a9d285904;hpb=c73d23911d78ed10179c12ef8f79a3fcf3bbcdaf;p=paraslash.git diff --git a/aft.c b/aft.c index 51703aa4..2b7a7af7 100644 --- a/aft.c +++ b/aft.c @@ -804,8 +804,8 @@ static char *make_image_lines(struct afs_info *afsi) static char *make_filename_lines(const char *path, unsigned flags) { - char *basename, *dirname; - char *ret; + char *dirname, *ret; + const char *basename; if (!(flags & LS_FLAG_FULL_PATH)) return make_message("%s: %s\n", @@ -814,9 +814,8 @@ static char *make_filename_lines(const char *path, unsigned flags) dirname = para_dirname(path); ret = make_message("%s: %s\n%s: %s\n%s: %s\n", status_item_list[SI_PATH], path, - status_item_list[SI_DIRECTORY], dirname, - status_item_list[SI_BASENAME], basename); - free(basename); + status_item_list[SI_DIRECTORY], dirname? dirname : "?", + status_item_list[SI_BASENAME], basename? basename : "?"); free(dirname); return ret; } @@ -887,13 +886,15 @@ static int print_list_item(struct ls_data *d, struct ls_options *opts, lyrics_lines = make_lyrics_lines(afsi); image_lines = make_image_lines(afsi); filename_lines = make_filename_lines(d->path, opts->flags); - if (opts->mode == LS_MODE_MBOX) + if (opts->mode == LS_MODE_MBOX) { + const char *bn = para_basename(d->path); para_printf(b, "From foo@localhost %s\n" "Received: from\nTo: bar\nFrom: a\n" "Subject: %s\n\n", last_played_time, - d->path); + bn? bn : "?"); + } para_printf(b, "%s" /* filename stuff */ "%s%s%s%s" /* score */