diff options
Diffstat (limited to 'src/input/vcd/libvcd/image_cdrdao.c')
-rw-r--r-- | src/input/vcd/libvcd/image_cdrdao.c | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/src/input/vcd/libvcd/image_cdrdao.c b/src/input/vcd/libvcd/image_cdrdao.c index 58543ff8e..5e00c14ee 100644 --- a/src/input/vcd/libvcd/image_cdrdao.c +++ b/src/input/vcd/libvcd/image_cdrdao.c @@ -1,5 +1,5 @@ /* - $Id: image_cdrdao.c,v 1.2 2004/04/11 12:20:32 miguelfreitas Exp $ + $Id: image_cdrdao.c,v 1.3 2005/01/01 02:43:59 rockyb Exp $ Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> @@ -28,18 +28,18 @@ /* Public headers */ #include <cdio/iso9660.h> +#include <cdio/bytesex.h> #include <libvcd/sector.h> #include <libvcd/logging.h> /* Private headers */ #include "vcd_assert.h" -#include "bytesex.h" #include "image_sink.h" #include "stream_stdio.h" #include "util.h" #include "vcd.h" -static const char _rcsid[] = "$Id: image_cdrdao.c,v 1.2 2004/04/11 12:20:32 miguelfreitas Exp $"; +static const char _rcsid[] = "$Id: image_cdrdao.c,v 1.3 2005/01/01 02:43:59 rockyb Exp $"; /* reader */ @@ -56,7 +56,7 @@ typedef struct { int last_snk_idx; bool last_pause; - VcdList *vcd_cue_list; + CdioList *vcd_cue_list; } _img_cdrdao_snk_t; static void @@ -73,12 +73,12 @@ _sink_free (void *user_data) } static int -_set_cuesheet (void *user_data, const VcdList *vcd_cue_list) +_set_cuesheet (void *user_data, const CdioList *vcd_cue_list) { _img_cdrdao_snk_t *_obj = user_data; VcdDataSink *toc_snk = vcd_data_sink_new_stdio (_obj->toc_fname); - VcdListNode *node; + CdioListNode *node; int track_no, index_no; const vcd_cue_t *_last_cue = 0; @@ -89,18 +89,18 @@ _set_cuesheet (void *user_data, const VcdList *vcd_cue_list) "// generated by %s\n\n" "CD_ROM_XA\n", vcd_version_string (false)); - _obj->vcd_cue_list = _vcd_list_new (); + _obj->vcd_cue_list = _cdio_list_new (); index_no = track_no = 0; - _VCD_LIST_FOREACH (node, (VcdList *) vcd_cue_list) + _CDIO_LIST_FOREACH (node, (CdioList *) vcd_cue_list) { - const vcd_cue_t *_cue = _vcd_list_node_data (node); + const vcd_cue_t *_cue = _cdio_list_node_data (node); /* copy cue list while traversing */ { vcd_cue_t *_cue2 = _vcd_malloc (sizeof (vcd_cue_t)); *_cue2 = *_cue; - _vcd_list_append (_obj->vcd_cue_list, _cue2); + _cdio_list_append (_obj->vcd_cue_list, _cue2); } switch (_cue->type) @@ -139,12 +139,13 @@ _set_cuesheet (void *user_data, const VcdList *vcd_cue_list) { msf_t _msf = { 0, 0, 0 }; + char *psz_msf; cdio_lba_to_msf (_cue->lsn - last_track_lsn, &_msf); + psz_msf = cdio_msf_to_str(&_msf); - vcd_data_sink_printf (toc_snk, - " INDEX %2.2x:%2.2x:%2.2x\n", - _msf.m, _msf.s, _msf.f); + vcd_data_sink_printf (toc_snk, " INDEX %s\n", psz_msf); + free(psz_msf); } break; @@ -170,23 +171,23 @@ _set_cuesheet (void *user_data, const VcdList *vcd_cue_list) } static int -_vcd_image_cdrdao_write (void *user_data, const void *data, uint32_t lsn) +_vcd_image_cdrdao_write (void *user_data, const void *data, lsn_t lsn) { const char *buf = data; _img_cdrdao_snk_t *_obj = user_data; long offset; { - VcdListNode *node; + CdioListNode *node; uint32_t _last = 0; uint32_t _ofs = 0; bool _lpregap = false; bool _pregap = false; int num = 0, in_track = 0; - _VCD_LIST_FOREACH (node, _obj->vcd_cue_list) + _CDIO_LIST_FOREACH (node, _obj->vcd_cue_list) { - const vcd_cue_t *_cue = _vcd_list_node_data (node); + const vcd_cue_t *_cue = _cdio_list_node_data (node); switch (_cue->type) { |