"Phil Krylov" phil@newstar.rinet.ru wrote:
Index: dlls/ntdll/cdrom.c
RCS file: /home/wine/wine/dlls/ntdll/cdrom.c,v retrieving revision 1.59 diff -p -u -r1.59 cdrom.c --- dlls/ntdll/cdrom.c 29 Jun 2005 19:18:54 -0000 1.59 +++ dlls/ntdll/cdrom.c 30 Jun 2005 11:27:41 -0000 @@ -75,6 +75,11 @@ # include <sys/scsiio.h> #endif
+#ifdef __APPLE__ +# include <IOKit/IOKitLib.h> +# include <IOKit/scsi/SCSICmds_REQUEST_SENSE_Defs.h> +#endif
#define NONAMELESSUNION #define NONAMELESSSTRUCT #include "ntstatus.h" @@ -1418,6 +1423,8 @@ static NTSTATUS CDROM_ScsiPassThroughDir
#ifdef SENSEBUFLEN if (pPacket->SenseInfoLength > SENSEBUFLEN) +#elif defined( __APPLE__ )
- if (pPacket->SenseInfoLength > kSenseDefaultSize)
#else if (pPacket->SenseInfoLength > sizeof(struct request_sense)) #endif
Please do not introduce even more platform dependent #ifdefs into cdrom.c, currently it already has enough mess with all that #if defined(linux)/(__FreeBSD__)/ (__NetBSD__). Add proper configure checks for headers and structures your platform needs.
Hi Dmitry,
On Thu, 30 Jun 2005 22:27:01 +0900 "Dmitry Timoshkov" dmitry@baikal.ru wrote:
"Phil Krylov" phil@newstar.rinet.ru wrote:
Index: dlls/ntdll/cdrom.c
RCS file: /home/wine/wine/dlls/ntdll/cdrom.c,v retrieving revision 1.59 diff -p -u -r1.59 cdrom.c --- dlls/ntdll/cdrom.c 29 Jun 2005 19:18:54 -0000 1.59 +++ dlls/ntdll/cdrom.c 30 Jun 2005 11:27:41 -0000 @@ -75,6 +75,11 @@ # include <sys/scsiio.h> #endif
+#ifdef __APPLE__ +# include <IOKit/IOKitLib.h> +# include <IOKit/scsi/SCSICmds_REQUEST_SENSE_Defs.h> +#endif
#define NONAMELESSUNION #define NONAMELESSSTRUCT #include "ntstatus.h" @@ -1418,6 +1423,8 @@ static NTSTATUS CDROM_ScsiPassThroughDir
#ifdef SENSEBUFLEN if (pPacket->SenseInfoLength > SENSEBUFLEN) +#elif defined( __APPLE__ )
- if (pPacket->SenseInfoLength > kSenseDefaultSize)
#else if (pPacket->SenseInfoLength > sizeof(struct request_sense)) #endif
Please do not introduce even more platform dependent #ifdefs into cdrom.c, currently it already has enough mess with all that #if defined(linux)/(__FreeBSD__)/ (__NetBSD__). Add proper configure checks for headers and structures your platform needs.
To be sure I get you right: would changing __APPLE__ to HAVE_IOKIT (and adding HAVE_IOKIT detection to configure) be sufficient?
-- Ph.
"Phil Krylov" phil@newstar.rinet.ru wrote:
#ifdef SENSEBUFLEN if (pPacket->SenseInfoLength > SENSEBUFLEN) +#elif defined( __APPLE__ )
- if (pPacket->SenseInfoLength > kSenseDefaultSize)
#else if (pPacket->SenseInfoLength > sizeof(struct request_sense)) #endif
Please do not introduce even more platform dependent #ifdefs into cdrom.c, currently it already has enough mess with all that #if defined(linux)/(__FreeBSD__)/ (__NetBSD__). Add proper configure checks for headers and structures your platform needs.
To be sure I get you right: would changing __APPLE__ to HAVE_IOKIT (and adding HAVE_IOKIT detection to configure) be sufficient?
I'd assume it's enough, yes. kSenseDefaultSize requires another test I think.