Reduce range of seek in paranoia_seek to be int32_t. CDDA's definitely live within this range. off_t is influenced by _FILE_OFFSET_BITS and can cause problems on a 32-bit system where _FILE_OFFSET_BITS is set to 64. See Bastiaan Timmer's posting to libcdio-help on July 7, 2011.
This commit is contained in:
@@ -1,7 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
$Id: paranoia.h,v 1.15 2008/03/25 15:59:09 karl Exp $
|
Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011
|
||||||
|
Rocky Bernstein <rocky@gnu.org>
|
||||||
Copyright (C) 2004, 2005, 2006, 2007, 2008 Rocky Bernstein <rocky@gnu.org>
|
|
||||||
Copyright (C) 1998 Monty xiphmont@mit.edu
|
Copyright (C) 1998 Monty xiphmont@mit.edu
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
@@ -126,7 +125,8 @@ extern "C" {
|
|||||||
@param whence like corresponding parameter in libc's lseek, e.g.
|
@param whence like corresponding parameter in libc's lseek, e.g.
|
||||||
SEEK_SET or SEEK_END.
|
SEEK_SET or SEEK_END.
|
||||||
*/
|
*/
|
||||||
extern lsn_t cdio_paranoia_seek(cdrom_paranoia_t *p, off_t seek, int whence);
|
extern lsn_t cdio_paranoia_seek(cdrom_paranoia_t *p, int32_t seek,
|
||||||
|
int whence);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Reads the next sector of audio data and returns a pointer to a full
|
Reads the next sector of audio data and returns a pointer to a full
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
$Id: paranoia.c,v 1.27 2008/04/17 17:39:48 karl Exp $
|
Copyright (C) 2004, 2005, 2006, 2008, 2011 Rocky Bernstein <rocky@gnu.org>
|
||||||
|
|
||||||
Copyright (C) 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
|
|
||||||
Copyright (C) 1998 Monty xiphmont@mit.edu
|
Copyright (C) 1998 Monty xiphmont@mit.edu
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
@@ -2472,7 +2470,7 @@ paranoia_modeset(cdrom_paranoia_t *p, int mode_flags)
|
|||||||
SEEK_SET or SEEK_END.
|
SEEK_SET or SEEK_END.
|
||||||
*/
|
*/
|
||||||
lsn_t
|
lsn_t
|
||||||
paranoia_seek(cdrom_paranoia_t *p, off_t seek, int whence)
|
paranoia_seek(cdrom_paranoia_t *p, int32_t seek, int whence)
|
||||||
{
|
{
|
||||||
long sector;
|
long sector;
|
||||||
long ret;
|
long ret;
|
||||||
|
|||||||
Reference in New Issue
Block a user