commit 03f2686a4475670ccd48b815a036c361542f78de
parent 2a1fe493b66fec3376722dcabd125b9693862882
Author: Wim Dupont <wim@wimdupont.com>
Date: Sun, 20 Jul 2025 19:28:31 +0200
cleanup
Diffstat:
M | disco-dl.c | | | 36 | +++++++++++++++++------------------- |
1 file changed, 17 insertions(+), 19 deletions(-)
diff --git a/disco-dl.c b/disco-dl.c
@@ -11,8 +11,6 @@
#include "config.h"
-#define DIR_SEP "/"
-
typedef struct
{
char *band;
@@ -72,15 +70,19 @@ main(void)
void
dl_album(Album *album)
{
- char *genredir = make_message("%s%s%s", ROOT_DIR, DIR_SEP, album->genre);
- char *banddir = make_message("%s%s%s", genredir, DIR_SEP, album->band);
- char *albumdir = make_message("%s%s%s", banddir, DIR_SEP, album->album);
- char *sys_command;
+ char *genredir, *banddir, *albumdir, *sys_command;
+ int status;
+
+ genredir = make_message("%s/%s", ROOT_DIR, album->genre);
+ banddir = make_message("%s/%s", genredir, album->band);
+ albumdir = make_message("%s/%s", banddir, album->album);
make_dir(ROOT_DIR);
make_dir(genredir);
make_dir(banddir);
- int status = make_dir(albumdir);
+
+ status = make_dir(albumdir);
+
if (status == 1)
fprintf(stdout, "Pathname already exists: %s\n", albumdir);
status = chdir(albumdir);
@@ -102,8 +104,7 @@ dl_album(Album *album)
void
tag_album(Album *album)
{
- char *token;
- char *tracklist;
+ char *token, *tracklist;
int count = 0;
Track *track;
@@ -131,15 +132,12 @@ tag_album(Album *album)
Track *
get_track(Album **album, char **track_name, int count)
{
- char *filename;
- char *tracknumber;
+ char *filename, *tracknumber, *substr;
+ char *pp[] = { (*album)->dir, NULL };
+ int fts_options = FTS_COMFOLLOW | FTS_LOGICAL | FTS_NOCHDIR;
FTS *ftsp;
FTSENT *p, *chp;
- int fts_options = FTS_COMFOLLOW | FTS_LOGICAL | FTS_NOCHDIR;
- char *pp[] = { (*album)->dir, NULL };
Track *track = NULL;
- char *substr;
-
if ((ftsp = fts_open(pp, fts_options, NULL)) == NULL)
fatal("Error during fts_open %s\n", pp);
@@ -187,14 +185,12 @@ get_track(Album **album, char **track_name, int count)
void
convert(Track *track){
- char *sys_command;
- char *path;
- char *base;
+ char *sys_command, *path, *base;
base = strdup(track->path);
base = dirname(base);
- path = make_message("%s%s%s - %s.mp3", base, DIR_SEP, track->tracknum, track->title);
+ path = make_message("%s/%s - %s.mp3", base, track->tracknum, track->title);
sys_command = make_message("ffmpeg -loglevel error -i \"%s\" \"%s\"", track->path, path);
system(sys_command);
free(sys_command);
@@ -282,6 +278,7 @@ make_dir(const char * name)
int status = EXIT_SUCCESS;
errno = 0;
int ret = mkdir(name, S_IRWXU);
+
if (ret == -1) {
switch (errno) {
case EACCES:
@@ -306,6 +303,7 @@ char *
concat(const char *s1, const char *s2)
{
char *result = malloc(strlen(s1) + strlen(s2) + 1);
+
if (result == NULL)
fatal("Fatal: failed to allocate bytes for concat.\n");