Fix some of the memory leaks and uninitialized variables which valgrind
notices.
This commit is contained in:
336
ChangeLog
336
ChangeLog
@@ -1,3 +1,339 @@
|
|||||||
|
2004-02-01 22:57 rocky
|
||||||
|
|
||||||
|
* configure.ac: 0.65's been released. We're now into 0.66 CVS.
|
||||||
|
|
||||||
|
2004-02-01 22:56 rocky
|
||||||
|
|
||||||
|
* lib/: Makefile.am, wnaspi32.h: Move APSI stuff into a separate
|
||||||
|
file.
|
||||||
|
|
||||||
|
2004-02-01 22:55 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_win32.c: Small changes. Bigger changes should follow
|
||||||
|
later.
|
||||||
|
|
||||||
|
2004-02-01 12:13 rocky
|
||||||
|
|
||||||
|
* example/sample7.c: More printf lint.
|
||||||
|
|
||||||
|
2004-02-01 12:12 rocky
|
||||||
|
|
||||||
|
* example/Makefile.am: libiso9660 depends on libcdio. Cygwin (and
|
||||||
|
perhaps others) then require that libiso9660 be listed in the link
|
||||||
|
order before things that it depends on.
|
||||||
|
|
||||||
|
2004-02-01 11:00 rocky
|
||||||
|
|
||||||
|
* src/iso-info.c: ISO Info - prints various information about a ISO
|
||||||
|
9660 image.
|
||||||
|
|
||||||
|
2004-02-01 10:53 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: 2nd try at getting lint messages removed across
|
||||||
|
all architectures.
|
||||||
|
|
||||||
|
2004-02-01 10:45 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: remove debug output lint warnings
|
||||||
|
|
||||||
|
2004-01-28 23:23 rocky
|
||||||
|
|
||||||
|
* doc/libcdio.texi: Typo.
|
||||||
|
|
||||||
|
2004-01-28 23:22 rocky
|
||||||
|
|
||||||
|
* example/: README, sample6.c, sample7.c: Update text commentary
|
||||||
|
for sample6 & sample7.
|
||||||
|
|
||||||
|
2004-01-18 13:31 rocky
|
||||||
|
|
||||||
|
* example/.cvsignore: Added yet another sample program.
|
||||||
|
|
||||||
|
2004-01-18 10:07 rocky
|
||||||
|
|
||||||
|
* include/cdio/iso9660.h: Don't pack our own iso9660_t.
|
||||||
|
|
||||||
|
2004-01-17 21:11 rocky
|
||||||
|
|
||||||
|
* include/cdio/iso9660.h: Move tm struct around so the alignment
|
||||||
|
will be on a word boundary. Do we need GNUC_PACKED here?
|
||||||
|
|
||||||
|
2004-01-15 09:43 hvr
|
||||||
|
|
||||||
|
* libpopt.m4: fixed underquoted definition warning
|
||||||
|
|
||||||
|
2004-01-09 23:11 rocky
|
||||||
|
|
||||||
|
* test/copying.iso: Sample ISO 9660 image.
|
||||||
|
|
||||||
|
2004-01-09 22:21 rocky
|
||||||
|
|
||||||
|
* include/cdio/iso9660.h, lib/iso9660_fs.c, src/util.c: iso-info
|
||||||
|
now does something useful now that readdir routine fixed up for iso
|
||||||
|
images.
|
||||||
|
|
||||||
|
2004-01-09 22:03 rocky
|
||||||
|
|
||||||
|
* example/Makefile.am, example/sample6.c, example/sample7.c,
|
||||||
|
include/cdio/iso9660.h, lib/_cdio_stdio.c, lib/_cdio_stdio.h,
|
||||||
|
lib/_cdio_stream.c, lib/_cdio_stream.h, lib/iso9660_fs.c,
|
||||||
|
src/Makefile.am: Add routines to open an ISO-9660 image independent
|
||||||
|
of being part of a CD.
|
||||||
|
|
||||||
|
2004-01-08 21:42 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_bincue.c: Remove duplicate assignment
|
||||||
|
|
||||||
|
2004-01-03 08:50 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: More guesses as to NRG format. Guess blocksizes,
|
||||||
|
handle some mixed-mode CDs.
|
||||||
|
|
||||||
|
2003-12-30 23:41 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: Some code consolidation.
|
||||||
|
|
||||||
|
2003-12-30 22:09 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: More Disk-at-once corrections.
|
||||||
|
|
||||||
|
2003-12-30 06:52 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: Slightly better disk-at-once and track-at-once
|
||||||
|
parsing. Am able to read a tao mode1 form1 now.
|
||||||
|
|
||||||
|
2003-12-28 03:33 uid67423
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: Attempt getting various non-mode2/form2 track
|
||||||
|
modes correct.
|
||||||
|
|
||||||
|
2003-12-24 06:09 uid67423
|
||||||
|
|
||||||
|
* example/sample6.c: add ISO9660 sample program
|
||||||
|
|
||||||
|
2003-12-24 06:08 uid67423
|
||||||
|
|
||||||
|
* example/.cvsignore: [no log message]
|
||||||
|
|
||||||
|
2003-12-24 06:05 uid67423
|
||||||
|
|
||||||
|
* NEWS, example/Makefile.am, example/README: Add ISO9660 sample
|
||||||
|
program.
|
||||||
|
|
||||||
|
2003-12-24 06:05 uid67423
|
||||||
|
|
||||||
|
* configure.ac: Require vcdimager 0.7.20 or greater. Bump libcdio
|
||||||
|
version for last release.
|
||||||
|
|
||||||
|
2003-12-24 06:03 uid67423
|
||||||
|
|
||||||
|
* include/cdio/iso9660.h: Documention in comment bug.
|
||||||
|
|
||||||
|
2003-12-02 19:52 rocky
|
||||||
|
|
||||||
|
* configure.ac: Remove extraneous cygwin LIB set.
|
||||||
|
|
||||||
|
2003-11-17 22:35 rocky
|
||||||
|
|
||||||
|
* include/cdio/cd_types.h, include/cdio/iso9660.h,
|
||||||
|
include/cdio/types.h, include/cdio/util.h, src/Makefile.am: More
|
||||||
|
documentation changes.
|
||||||
|
|
||||||
|
Makefile.am: Don't build man pages if not in MAINTAINER mode.
|
||||||
|
|
||||||
|
2003-11-17 07:06 rocky
|
||||||
|
|
||||||
|
* doc/Makefile.am, include/cdio/cd_types.h, include/cdio/cdio.h,
|
||||||
|
include/cdio/iso9660.h, include/cdio/logging.h,
|
||||||
|
include/cdio/sector.h, include/cdio/types.h, include/cdio/xa.h:
|
||||||
|
Related to doxygen documentation.
|
||||||
|
|
||||||
|
2003-11-17 06:50 rocky
|
||||||
|
|
||||||
|
* include/cdio/version.h.in: Add doxygen comment and CVS Id line.
|
||||||
|
|
||||||
|
2003-11-16 14:30 rocky
|
||||||
|
|
||||||
|
* doc/Makefile.am, include/cdio/iso9660.h, lib/iso9660_fs.c,
|
||||||
|
src/cd-info.c: iso9600_stat now has filename inside it.
|
||||||
|
iso9660_fs_readdir now returns a list of iso9660_stat_t's rather
|
||||||
|
than filenames.
|
||||||
|
|
||||||
|
This should reduce by a small amount the number of CD reads since
|
||||||
|
we store more information in the iso9660_fs_readdir return.
|
||||||
|
|
||||||
|
However all of this is in preparation for greatly reducing the
|
||||||
|
number of CD reads when picking out segment lsn information.
|
||||||
|
|
||||||
|
2003-11-11 07:46 rocky
|
||||||
|
|
||||||
|
* doc/libcdio.texi: libcdio.info was missing a @dircategory and
|
||||||
|
@direntry section.
|
||||||
|
|
||||||
|
See
|
||||||
|
http://savannah.nongnu.org/bugs/?func=detailbug&bug_id=6470&group_id=3845
|
||||||
|
|
||||||
|
Thanks to dweimer for pointing this out and providing a patch.
|
||||||
|
|
||||||
|
2003-11-09 23:01 rocky
|
||||||
|
|
||||||
|
* include/cdio/iso9660.h, lib/iso9660_fs.c: Smallish cosmetic
|
||||||
|
changes. Bigger ones to iso9660_fs_readdir will probably occur
|
||||||
|
later...
|
||||||
|
|
||||||
|
2003-11-09 22:59 rocky
|
||||||
|
|
||||||
|
* NEWS: [no log message]
|
||||||
|
|
||||||
|
2003-11-09 22:47 rocky
|
||||||
|
|
||||||
|
* src/cd-read.c: Allow setting debug level in library for default
|
||||||
|
log handler.
|
||||||
|
|
||||||
|
2003-11-09 10:51 rocky
|
||||||
|
|
||||||
|
* src/cd-info.c: Was filling out source_name for a device even when
|
||||||
|
it wasn't.
|
||||||
|
|
||||||
|
2003-11-09 10:50 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_nrg.c: Revise info on MTYP - more debugging here too.
|
||||||
|
|
||||||
|
2003-11-09 09:13 rocky
|
||||||
|
|
||||||
|
* doc/doxygen/.cvignore: The usual.
|
||||||
|
|
||||||
|
2003-11-09 09:11 rocky
|
||||||
|
|
||||||
|
* doc/doxygen/run_doxygen: Program to run doxygen.
|
||||||
|
|
||||||
|
2003-11-09 08:57 rocky
|
||||||
|
|
||||||
|
* lib/logging.c, src/cd-info.c: Be able to set/disable default log
|
||||||
|
handler logging.
|
||||||
|
|
||||||
|
2003-11-09 08:56 rocky
|
||||||
|
|
||||||
|
* Makefile.am: Add doxygen target.
|
||||||
|
|
||||||
|
2003-11-09 08:54 rocky
|
||||||
|
|
||||||
|
* doc/doxygen/Doxyfile: Slightly customized configuration setting
|
||||||
|
for running doxygen.
|
||||||
|
|
||||||
|
2003-11-09 08:53 rocky
|
||||||
|
|
||||||
|
* include/cdio/iso9660.h: doxygen changes.
|
||||||
|
|
||||||
|
2003-11-05 07:40 rocky
|
||||||
|
|
||||||
|
* include/cdio/: cdio.h, iso9660.h, sector.h: update/add More
|
||||||
|
doxygen tagging
|
||||||
|
|
||||||
|
2003-11-04 23:12 rocky
|
||||||
|
|
||||||
|
* example/sample3.c, example/sample4.c, include/cdio/cd_types.h,
|
||||||
|
lib/cd_types.c, lib/cdio.c, src/cd-info.c: cdio_analysis ->
|
||||||
|
cdio_iso_analysis
|
||||||
|
|
||||||
|
2003-11-04 07:28 rocky
|
||||||
|
|
||||||
|
* include/cdio/: cd_types.h, cdio.h, logging.h: doxygen changes.
|
||||||
|
|
||||||
|
2003-11-03 23:45 rocky
|
||||||
|
|
||||||
|
* include/cdio/cd_types.h, include/cdio/iso9660.h,
|
||||||
|
include/cdio/logging.h, lib/logging.c: Start to document using
|
||||||
|
doxygen.
|
||||||
|
|
||||||
|
2003-11-03 23:44 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_bincue.c: Got return value on _cdio_audio_sectors
|
||||||
|
backwards.
|
||||||
|
|
||||||
|
2003-10-28 11:23 rocky
|
||||||
|
|
||||||
|
* configure.ac, doc/libcdio.texi, include/cdio/iso9660.h,
|
||||||
|
src/util.c: configure.ac: changes suggested by Karl Berry
|
||||||
|
(karl@freefriends.org) which may make work for autoconf 1.7.8
|
||||||
|
|
||||||
|
libcdio.texi: remove colophon and correct copyright notice
|
||||||
|
iso9660.h: trivial comment addition util.c: Correct copyright line.
|
||||||
|
|
||||||
|
2003-10-20 00:29 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_win32.c: Retry YellowMode2 if XA fails - but I think we
|
||||||
|
need a better overall method.
|
||||||
|
|
||||||
|
2003-10-20 00:28 rocky
|
||||||
|
|
||||||
|
* src/cd-read.c: Don't print blocks if read failed.
|
||||||
|
|
||||||
|
2003-10-19 12:36 rocky
|
||||||
|
|
||||||
|
* configure.ac: Life goes on. Bump version number.
|
||||||
|
|
||||||
|
2003-10-18 15:49 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_win32.c: More WIN32 fixes.
|
||||||
|
|
||||||
|
2003-10-18 00:08 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_win32.c: More fixes on non ASPI side.
|
||||||
|
|
||||||
|
2003-10-16 22:25 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_win32.c: Track format's if no ASPI are probably close.
|
||||||
|
Reading probably closer to correct.
|
||||||
|
|
||||||
|
2003-10-16 09:21 rocky
|
||||||
|
|
||||||
|
* src/cd-read.c: Typo.
|
||||||
|
|
||||||
|
2003-10-15 07:53 rocky
|
||||||
|
|
||||||
|
* NEWS: [no log message]
|
||||||
|
|
||||||
|
2003-10-14 23:53 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_win32.c: Some of the many necessary fixes needed to
|
||||||
|
make Win32 handling more complete. Some bugs remain (and will so
|
||||||
|
until after the release).
|
||||||
|
|
||||||
|
2003-10-14 22:35 rocky
|
||||||
|
|
||||||
|
* src/cd-read.c: [no log message]
|
||||||
|
|
||||||
|
2003-10-14 21:59 rocky
|
||||||
|
|
||||||
|
* src/cd-info.c, src/cd-read.c, test/cdda.right,
|
||||||
|
test/check_opts2.right, test/check_opts3.right,
|
||||||
|
test/check_opts4.right, test/check_opts5.right,
|
||||||
|
test/check_opts6.right, test/check_opts7.right,
|
||||||
|
test/isofs-m1.right, test/monvoisin.right,
|
||||||
|
test/svcd_ogt_test_ntsc.right, test/svcdgs.right,
|
||||||
|
test/vcd_demo.right, test/vcd_demo_vcdinfo.right,
|
||||||
|
test/videocd.right: Show green status for each track. cd-info.c:
|
||||||
|
above + fewer assertions cd-read.c: direction we'll go when after
|
||||||
|
release.
|
||||||
|
|
||||||
|
2003-10-14 00:44 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_sunos.c: Back off some of the modularization until we
|
||||||
|
figure out what's gone wrong.
|
||||||
|
|
||||||
|
2003-10-13 19:41 rocky
|
||||||
|
|
||||||
|
* lib/_cdio_osx.c: Compilation bugs.
|
||||||
|
|
||||||
|
2003-10-13 19:00 rocky
|
||||||
|
|
||||||
|
* configure.ac: The real release.
|
||||||
|
|
||||||
|
2003-10-13 18:45 rocky
|
||||||
|
|
||||||
|
* ChangeLog: [no log message]
|
||||||
|
|
||||||
2003-10-07 21:06 rocky
|
2003-10-07 21:06 rocky
|
||||||
|
|
||||||
* include/cdio/sector.h, lib/_cdio_osx.c: OSX fixups and #define
|
* include/cdio/sector.h, lib/_cdio_osx.c: OSX fixups and #define
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
$Id: _cdio_linux.c,v 1.27 2003/10/03 01:26:52 rocky Exp $
|
$Id: _cdio_linux.c,v 1.28 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
|
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
|
||||||
Copyright (C) 2002,2003 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2002, 2003, 2004 Rocky Bernstein <rocky@panix.com>
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
# include "config.h"
|
# include "config.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.27 2003/10/03 01:26:52 rocky Exp $";
|
static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.28 2004/02/07 02:40:20 rocky Exp $";
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
@@ -727,6 +727,7 @@ _cdio_get_mcn (void *env) {
|
|||||||
|
|
||||||
struct cdrom_mcn mcn;
|
struct cdrom_mcn mcn;
|
||||||
_img_private_t *_obj = env;
|
_img_private_t *_obj = env;
|
||||||
|
memset(&mcn, 0, sizeof(mcn));
|
||||||
if (ioctl(_obj->gen.fd, CDROM_GET_MCN, &mcn) != 0)
|
if (ioctl(_obj->gen.fd, CDROM_GET_MCN, &mcn) != 0)
|
||||||
return NULL;
|
return NULL;
|
||||||
return strdup(mcn.medium_catalog_number);
|
return strdup(mcn.medium_catalog_number);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: cdio.c,v 1.37 2003/11/05 04:12:58 rocky Exp $
|
$Id: cdio.c,v 1.38 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
||||||
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
|
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
#include <cdio/logging.h>
|
#include <cdio/logging.h>
|
||||||
#include "cdio_private.h"
|
#include "cdio_private.h"
|
||||||
|
|
||||||
static const char _rcsid[] = "$Id: cdio.c,v 1.37 2003/11/05 04:12:58 rocky Exp $";
|
static const char _rcsid[] = "$Id: cdio.c,v 1.38 2004/02/07 02:40:20 rocky Exp $";
|
||||||
|
|
||||||
|
|
||||||
const char *track_format2str[6] =
|
const char *track_format2str[6] =
|
||||||
@@ -849,6 +849,7 @@ cdio_open (const char *orig_source_name, driver_id_t driver_id)
|
|||||||
if ((*CdIo_all_drivers[driver_id].have_driver)()) {
|
if ((*CdIo_all_drivers[driver_id].have_driver)()) {
|
||||||
CdIo *ret = (*CdIo_all_drivers[driver_id].driver_open)(source_name);
|
CdIo *ret = (*CdIo_all_drivers[driver_id].driver_open)(source_name);
|
||||||
if (ret) ret->driver_id = driver_id;
|
if (ret) ret->driver_id = driver_id;
|
||||||
|
free(source_name);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
$Id: cd-info.c,v 1.47 2003/11/16 19:30:45 rocky Exp $
|
$Id: cd-info.c,v 1.48 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
|
||||||
Copyright (C) 1996,1997,1998 Gerd Knorr <kraxel@bytesex.org>
|
Copyright (C) 1996, 1997, 1998 Gerd Knorr <kraxel@bytesex.org>
|
||||||
and Heiko Ei<45>feldt <heiko@hexco.de>
|
and Heiko Ei<45>feldt <heiko@hexco.de>
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@@ -203,7 +203,7 @@ parse_options (int argc, const char *argv[])
|
|||||||
poptContext optCon = poptGetContext (NULL, argc, argv, optionsTable, 0);
|
poptContext optCon = poptGetContext (NULL, argc, argv, optionsTable, 0);
|
||||||
|
|
||||||
program_name = strrchr(argv[0],'/');
|
program_name = strrchr(argv[0],'/');
|
||||||
program_name = program_name ? program_name+1 : strdup(argv[0]);
|
program_name = program_name ? strdup(program_name+1) : strdup(argv[0]);
|
||||||
|
|
||||||
while ((opt = poptGetNextOpt (optCon)) != -1) {
|
while ((opt = poptGetNextOpt (optCon)) != -1) {
|
||||||
switch (opt) {
|
switch (opt) {
|
||||||
@@ -242,6 +242,7 @@ parse_options (int argc, const char *argv[])
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
poptFreeContext(optCon);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -252,6 +253,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
"%s: Source specified in option %s and as %s\n",
|
"%s: Source specified in option %s and as %s\n",
|
||||||
program_name, source_name, remaining_arg);
|
program_name, source_name, remaining_arg);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -264,12 +267,15 @@ parse_options (int argc, const char *argv[])
|
|||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
"%s: Source specified in previously %s and %s\n",
|
"%s: Source specified in previously %s and %s\n",
|
||||||
program_name, source_name, remaining_arg);
|
program_name, source_name, remaining_arg);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
poptFreeContext(optCon);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: cd-read.c,v 1.15 2003/11/10 03:47:37 rocky Exp $
|
$Id: cd-read.c,v 1.16 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
||||||
|
|
||||||
@@ -229,7 +229,7 @@ parse_options (int argc, const char *argv[])
|
|||||||
poptContext optCon = poptGetContext (NULL, argc, argv, optionsTable, 0);
|
poptContext optCon = poptGetContext (NULL, argc, argv, optionsTable, 0);
|
||||||
|
|
||||||
program_name = strrchr(argv[0],'/');
|
program_name = strrchr(argv[0],'/');
|
||||||
program_name = program_name ? program_name+1 : strdup(argv[0]);
|
program_name = program_name ? strdup(program_name+1) : strdup(argv[0]);
|
||||||
|
|
||||||
while ((opt = poptGetNextOpt (optCon)) != -1)
|
while ((opt = poptGetNextOpt (optCon)) != -1)
|
||||||
switch (opt)
|
switch (opt)
|
||||||
@@ -274,6 +274,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
break;
|
break;
|
||||||
case OP_VERSION:
|
case OP_VERSION:
|
||||||
print_version(program_name, VERSION, 0, true);
|
print_version(program_name, VERSION, 0, true);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit (EXIT_SUCCESS);
|
exit (EXIT_SUCCESS);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -282,6 +284,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
poptBadOption(optCon, POPT_BADOPTION_NOALIAS),
|
poptBadOption(optCon, POPT_BADOPTION_NOALIAS),
|
||||||
poptStrerror(opt));
|
poptStrerror(opt));
|
||||||
fprintf (stderr, "error while parsing command line - try --help\n");
|
fprintf (stderr, "error while parsing command line - try --help\n");
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -292,6 +296,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
"%s: Source specified in option %s and as %s\n",
|
"%s: Source specified in option %s and as %s\n",
|
||||||
program_name, source_name, remaining_arg);
|
program_name, source_name, remaining_arg);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -304,6 +310,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
"%s: Source specified in previously %s and %s\n",
|
"%s: Source specified in previously %s and %s\n",
|
||||||
program_name, source_name, remaining_arg);
|
program_name, source_name, remaining_arg);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -320,6 +328,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"%s: Need to give a read mode (audio, m1f1, m1f2, m2f1 or m2f2)\n",
|
"%s: Need to give a read mode (audio, m1f1, m1f2, m2f1 or m2f2)\n",
|
||||||
program_name);
|
program_name);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit(10);
|
exit(10);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -338,6 +348,7 @@ parse_options (int argc, const char *argv[])
|
|||||||
" the sector to read (%lu)\n",
|
" the sector to read (%lu)\n",
|
||||||
program_name, (unsigned long) opts.end_lsn,
|
program_name, (unsigned long) opts.end_lsn,
|
||||||
(unsigned long) opts.num_sectors);
|
(unsigned long) opts.num_sectors);
|
||||||
|
poptFreeContext(optCon);
|
||||||
exit(12);
|
exit(12);
|
||||||
}
|
}
|
||||||
opts.start_lsn = opts.end_lsn - opts.num_sectors + 1;
|
opts.start_lsn = opts.end_lsn - opts.num_sectors + 1;
|
||||||
@@ -356,6 +367,8 @@ parse_options (int argc, const char *argv[])
|
|||||||
"%s: end LSN (%lu) needs to be less than start LSN (%lu)\n",
|
"%s: end LSN (%lu) needs to be less than start LSN (%lu)\n",
|
||||||
program_name, (unsigned long) opts.start_lsn,
|
program_name, (unsigned long) opts.start_lsn,
|
||||||
(unsigned long) opts.end_lsn);
|
(unsigned long) opts.end_lsn);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit(13);
|
exit(13);
|
||||||
}
|
}
|
||||||
if (opts.num_sectors != opts.end_lsn - opts.start_lsn + 1)
|
if (opts.num_sectors != opts.end_lsn - opts.start_lsn + 1)
|
||||||
@@ -365,11 +378,14 @@ parse_options (int argc, const char *argv[])
|
|||||||
"and count (%d)\n",
|
"and count (%d)\n",
|
||||||
program_name, (unsigned long) opts.start_lsn,
|
program_name, (unsigned long) opts.start_lsn,
|
||||||
(unsigned long) opts.end_lsn, opts.num_sectors);
|
(unsigned long) opts.end_lsn, opts.num_sectors);
|
||||||
|
poptFreeContext(optCon);
|
||||||
|
free(program_name);
|
||||||
exit(14);
|
exit(14);
|
||||||
}
|
}
|
||||||
opts.num_sectors = opts.end_lsn - opts.start_lsn + 1;
|
opts.num_sectors = opts.end_lsn - opts.start_lsn + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
poptFreeContext(optCon);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -536,6 +552,8 @@ main(int argc, const char *argv[])
|
|||||||
|
|
||||||
if (opts.output_file) close(output_fd);
|
if (opts.output_file) close(output_fd);
|
||||||
|
|
||||||
cdio_destroy(cdio);
|
myexit(cdio, EXIT_SUCCESS);
|
||||||
return 0;
|
/* Not reached:*/
|
||||||
|
return(EXIT_SUCCESS);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: iso-info.c,v 1.1 2004/02/01 16:00:06 rocky Exp $
|
$Id: iso-info.c,v 1.2 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2004 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2004 Rocky Bernstein <rocky@panix.com>
|
||||||
|
|
||||||
@@ -102,7 +102,7 @@ parse_options (int argc, const char *argv[])
|
|||||||
poptContext optCon = poptGetContext (NULL, argc, argv, optionsTable, 0);
|
poptContext optCon = poptGetContext (NULL, argc, argv, optionsTable, 0);
|
||||||
|
|
||||||
program_name = strrchr(argv[0],'/');
|
program_name = strrchr(argv[0],'/');
|
||||||
program_name = program_name ? program_name+1 : strdup(argv[0]);
|
program_name = program_name ? strdup(program_name+1) : strdup(argv[0]);
|
||||||
|
|
||||||
while ((opt = poptGetNextOpt (optCon)) != -1) {
|
while ((opt = poptGetNextOpt (optCon)) != -1) {
|
||||||
switch (opt) {
|
switch (opt) {
|
||||||
@@ -119,11 +119,13 @@ parse_options (int argc, const char *argv[])
|
|||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
"%s: Source specified in previously %s and %s\n",
|
"%s: Source specified in previously %s and %s\n",
|
||||||
program_name, source_name, remaining_arg);
|
program_name, source_name, remaining_arg);
|
||||||
|
poptFreeContext(optCon);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
poptFreeContext(optCon);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -287,5 +289,6 @@ main(int argc, const char *argv[])
|
|||||||
|
|
||||||
iso9660_close(iso);
|
iso9660_close(iso);
|
||||||
/* Not reached:*/
|
/* Not reached:*/
|
||||||
|
free(program_name);
|
||||||
return(EXIT_SUCCESS);
|
return(EXIT_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|||||||
10
src/util.c
10
src/util.c
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: util.c,v 1.3 2004/01/10 03:21:50 rocky Exp $
|
$Id: util.c,v 1.4 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
|
||||||
|
|
||||||
@@ -29,13 +29,14 @@ char *program_name;
|
|||||||
void
|
void
|
||||||
myexit(CdIo *cdio, int rc)
|
myexit(CdIo *cdio, int rc)
|
||||||
{
|
{
|
||||||
if (NULL != cdio)
|
if (NULL != cdio) cdio_destroy(cdio);
|
||||||
cdio_destroy(cdio);
|
if (NULL != program_name) free(program_name);
|
||||||
|
if (NULL != source_name) free(source_name);
|
||||||
exit(rc);
|
exit(rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
print_version (const char *program_name, const char *version,
|
print_version (char *program_name, const char *version,
|
||||||
int no_header, bool version_only)
|
int no_header, bool version_only)
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -61,6 +62,7 @@ PARTICULAR PURPOSE.\n\
|
|||||||
printf("Default CD-ROM device: %s\n", default_device);
|
printf("Default CD-ROM device: %s\n", default_device);
|
||||||
else
|
else
|
||||||
printf("No CD-ROM device found.\n");
|
printf("No CD-ROM device found.\n");
|
||||||
|
free(program_name);
|
||||||
exit(100);
|
exit(100);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: util.h,v 1.1 2003/09/21 04:21:39 rocky Exp $
|
$Id: util.h,v 1.2 2004/02/07 02:40:20 rocky Exp $
|
||||||
|
|
||||||
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
||||||
|
|
||||||
@@ -94,7 +94,7 @@ extern cdio_log_handler_t gl_default_cdio_log_handler;
|
|||||||
|
|
||||||
void myexit(CdIo *cdio, int rc);
|
void myexit(CdIo *cdio, int rc);
|
||||||
|
|
||||||
void print_version (const char *program_name, const char *version,
|
void print_version (char *program_name, const char *version,
|
||||||
int no_header, bool version_only);
|
int no_header, bool version_only);
|
||||||
|
|
||||||
char *fillout_device_name(const char *device_name);
|
char *fillout_device_name(const char *device_name);
|
||||||
|
|||||||
Reference in New Issue
Block a user