diff options
author | ache <ache@FreeBSD.org> | 1996-02-01 16:51:53 +0000 |
---|---|---|
committer | ache <ache@FreeBSD.org> | 1996-02-01 16:51:53 +0000 |
commit | de3cde140a765869737af76783988b3ae5169900 (patch) | |
tree | 8f7c5a8487e5831628a0bb34f1f966a566c9ea8e /sys/dev/mcd | |
parent | 5f45605dbe8a766fb29d2a77b04e8027a980ff92 (diff) | |
download | FreeBSD-src-de3cde140a765869737af76783988b3ae5169900.zip FreeBSD-src-de3cde140a765869737af76783988b3ae5169900.tar.gz |
Fix TOC size calculation: old code assing volume size here
Diffstat (limited to 'sys/dev/mcd')
-rw-r--r-- | sys/dev/mcd/mcd.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/mcd/mcd.c b/sys/dev/mcd/mcd.c index 39060b1..9d6ab63 100644 --- a/sys/dev/mcd/mcd.c +++ b/sys/dev/mcd/mcd.c @@ -40,7 +40,7 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: mcd.c,v 1.62 1996/01/30 13:15:22 ache Exp $ + * $Id: mcd.c,v 1.63 1996/01/30 23:27:20 ache Exp $ */ static char COPYRIGHT[] = "mcd-driver (C)1993 by H.Veit & B.Moore"; @@ -1343,9 +1343,11 @@ mcd_toc_header(int unit, struct ioc_toc_header *th) if ((r = mcd_volinfo(unit)) != 0) return r; - th->len = msf2hsg(cd->volinfo.vol_msf, 0); th->starting_track = bcd2bin(cd->volinfo.trk_low); th->ending_track = bcd2bin(cd->volinfo.trk_high); + th->len = sizeof(struct ioc_toc_header) + + (th->ending_track - th->starting_track + 1) * + sizeof(struct cd_toc_entry); return 0; } |