From 58e9412bff9947e4514c0d55152bfad91049a60c Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Fri, 2 Sep 2005 01:15:35 +0000 Subject: Added universal functions for creation of numbered filenames and date+time filenames (units with RTC only). Some size optimisations within code using these new functions. Everything should behave as before, except config saving will always find the highest file number + 1 even if the sequence is non-contiguous. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7449 a1c6a512-1295-4272-9138-f99709370657 --- apps/recorder/recording.c | 47 +++-------------------------------------------- 1 file changed, 3 insertions(+), 44 deletions(-) (limited to 'apps/recorder') diff --git a/apps/recorder/recording.c b/apps/recorder/recording.c index ea71538322..3fcf97b177 100644 --- a/apps/recorder/recording.c +++ b/apps/recorder/recording.c @@ -164,56 +164,15 @@ void adjust_cursor(void) char *rec_create_filename(char *buffer) { - int fpos; - if(global_settings.rec_directory) getcwd(buffer, MAX_PATH); else strncpy(buffer, rec_base_directory, MAX_PATH); - fpos = strlen(buffer); -#ifdef HAVE_RTC - { - struct tm *tm = get_time(); - - /* Append filename to path: RYYMMDD-HH.MM.SS.mp3 */ - snprintf(&buffer[fpos], MAX_PATH-fpos, - "/R%02d%02d%02d-%02d%02d%02d.mp3", - tm->tm_year%100, tm->tm_mon+1, tm->tm_mday, - tm->tm_hour, tm->tm_min, tm->tm_sec); - } +#ifdef HAVE_RTC + create_datetime_filename(buffer, buffer, "R", ".mp3"); #else - { - DIR* dir; - int max_rec_file = 1; /* default to rec_0001.mp3 */ - dir = opendir(buffer); - if (dir) /* found */ - { - /* Search for the highest recording filename present, - increment behind that. So even with "holes" - (deleted recordings), the newest will always have the - highest number. */ - while(true) - { - struct dirent* entry; - int curr_rec_file; - /* walk through the directory content */ - entry = readdir(dir); - if (!entry) - { - closedir(dir); - break; /* end of dir */ - } - if (strncasecmp(entry->d_name, "rec_", 4)) - continue; /* no recording file */ - curr_rec_file = atoi(&entry->d_name[4]); - if (curr_rec_file >= max_rec_file) - max_rec_file = curr_rec_file + 1; - } - } - snprintf(&buffer[fpos], MAX_PATH-fpos, - "/rec_%04d.mp3", max_rec_file); - } + create_numbered_filename(buffer, buffer, "rec_", ".mp3", 4); #endif return buffer; } -- cgit v1.2.3