From 58b83584e38da0c5043497320f90e166cc4aff38 Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Thu, 1 Nov 2007 21:32:34 +0100 Subject: [PATCH] Get rid of afd->afsi and rename afs_status_info to verbose_ls_output. --- afs.h | 11 ++++++++--- aft.c | 16 ++++++++-------- command.c | 2 +- vss.c | 5 +---- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/afs.h b/afs.h index d9fa53c4..b9c77068 100644 --- a/afs.h +++ b/afs.h @@ -109,12 +109,17 @@ struct ls_data { }; int make_status_items(struct ls_data *d, struct para_buffer *pb); -#define AFS_STATUS_INFO_SIZE 4096 +#define VERBOSE_LS_OUTPUT_SIZE 4096 +/* + * Data about the current audio file, passed from afs to server. + */ struct audio_file_data { - char afs_status_info[AFS_STATUS_INFO_SIZE]; + /* Same info as ls -lv -p . */ + char verbose_ls_output[VERBOSE_LS_OUTPUT_SIZE]; + /* The open file descriptor to the current audio file. */ int fd; - struct afs_info afsi; + /* Vss needs this for streaming. */ struct afh_info afhi; }; diff --git a/aft.c b/aft.c index d2c7ced4..fae883b4 100644 --- a/aft.c +++ b/aft.c @@ -663,14 +663,14 @@ int load_afd(int shmid, struct audio_file_data *afd) * and the lastplayed time is set to the current time. Finally, the score of * the audio file is updated. * - * \return Positive on success, negative on errors. + * \return Positive shmid on success, negative on errors. */ int open_and_update_audio_file(struct osl_row *aft_row, struct audio_file_data *afd, long score) { HASH_TYPE *aft_hash, file_hash[HASH_SIZE]; struct osl_object afsi_obj; - struct afs_info new_afsi; + struct afs_info old_afsi, new_afsi; int ret = get_hash_of_row(aft_row, &aft_hash); struct afsi_change_event_data aced; struct osl_object map, chunk_table_obj; @@ -684,7 +684,7 @@ int open_and_update_audio_file(struct osl_row *aft_row, ret = get_afsi_object_of_row(aft_row, &afsi_obj); if (ret < 0) return ret; - ret = load_afsi(&afd->afsi, &afsi_obj); + ret = load_afsi(&old_afsi, &afsi_obj); if (ret < 0) return ret; ret = get_afhi_of_row(aft_row, &afd->afhi); @@ -705,7 +705,7 @@ int open_and_update_audio_file(struct osl_row *aft_row, ret = -E_HASH_MISMATCH; goto err; } - new_afsi = afd->afsi; + new_afsi = old_afsi; new_afsi.num_played++; new_afsi.last_played = time(NULL); save_afsi(&new_afsi, &afsi_obj); /* in-place update */ @@ -716,7 +716,7 @@ int open_and_update_audio_file(struct osl_row *aft_row, { struct ls_data d = { .afhi = afd->afhi, - .afsi = afd->afsi, + .afsi = old_afsi, .path = path, .score = score, .hash = file_hash @@ -725,12 +725,12 @@ int open_and_update_audio_file(struct osl_row *aft_row, ret = make_status_items(&d, &pb); if (ret < 0) goto err; - strncpy(afd->afs_status_info, pb.buf, AFS_STATUS_INFO_SIZE); - afd->afs_status_info[AFS_STATUS_INFO_SIZE - 1] = '\0'; + strncpy(afd->verbose_ls_output, pb.buf, VERBOSE_LS_OUTPUT_SIZE); + afd->verbose_ls_output[VERBOSE_LS_OUTPUT_SIZE - 1] = '\0'; free(pb.buf); } aced.aft_row = aft_row; - aced.old_afsi = &afd->afsi; + aced.old_afsi = &old_afsi; afs_event(AFSI_CHANGE, NULL, &aced); ret = save_afd(afd); if (ret < 0) diff --git a/command.c b/command.c index 6e2cf563..219e19a5 100644 --- a/command.c +++ b/command.c @@ -139,7 +139,7 @@ static char *get_status(struct misc_meta_data *nmmd) (long unsigned)now.tv_sec, (long unsigned)now.tv_usec, - nmmd->afd.afs_status_info + nmmd->afd.verbose_ls_output ); free(flags); diff --git a/vss.c b/vss.c index cb99366b..bf11dc9b 100644 --- a/vss.c +++ b/vss.c @@ -167,8 +167,7 @@ static struct timeval *vss_compute_timeout(void) if (!vss_playing() || !map) return NULL; vss_next_chunk_time(&next_chunk); - if (chk_barrier(audio_format_name(mmd->afd.afsi.audio_format_id), - &now, &next_chunk, &the_timeout, 0) < 0) + if (chk_barrier("chunk", &now, &next_chunk, &the_timeout, 0) < 0) return &the_timeout; /* chunk is due or bof */ the_timeout.tv_sec = 0; @@ -201,8 +200,6 @@ static void vss_eof(void) strncpy(mmd->afd.afhi.info_string, tmp, sizeof(mmd->afd.afhi.info_string)); mmd->afd.afhi.info_string[sizeof(mmd->afd.afhi.info_string) - 1] = '\0'; free(tmp); - mmd->afd.afsi.lyrics_id = 0; - mmd->afd.afsi.image_id = 0; mmd->mtime = 0; mmd->size = 0; mmd->events++; -- 2.39.5