ntdll: Define dvd_struct ourselves since it's not consistent across platforms.
This commit is contained in:
parent
129d83fffb
commit
c5dadf4739
|
@ -1939,7 +1939,15 @@ static NTSTATUS DVD_GetRegion(int dev, PDVD_REGION region)
|
||||||
static NTSTATUS DVD_ReadStructure(int dev, const DVD_READ_STRUCTURE *structure, PDVD_LAYER_DESCRIPTOR layer)
|
static NTSTATUS DVD_ReadStructure(int dev, const DVD_READ_STRUCTURE *structure, PDVD_LAYER_DESCRIPTOR layer)
|
||||||
{
|
{
|
||||||
#ifdef DVD_READ_STRUCT
|
#ifdef DVD_READ_STRUCT
|
||||||
dvd_struct s;
|
/* dvd_struct is not defined consistently across platforms */
|
||||||
|
union
|
||||||
|
{
|
||||||
|
struct dvd_physical physical;
|
||||||
|
struct dvd_copyright copyright;
|
||||||
|
struct dvd_disckey disckey;
|
||||||
|
struct dvd_bca bca;
|
||||||
|
struct dvd_manufact manufact;
|
||||||
|
} s;
|
||||||
|
|
||||||
if (structure->BlockByteOffset.u.HighPart || structure->BlockByteOffset.u.LowPart)
|
if (structure->BlockByteOffset.u.HighPart || structure->BlockByteOffset.u.LowPart)
|
||||||
FIXME(": BlockByteOffset is not handled\n");
|
FIXME(": BlockByteOffset is not handled\n");
|
||||||
|
@ -1947,26 +1955,26 @@ static NTSTATUS DVD_ReadStructure(int dev, const DVD_READ_STRUCTURE *structure,
|
||||||
switch (structure->Format)
|
switch (structure->Format)
|
||||||
{
|
{
|
||||||
case DvdPhysicalDescriptor:
|
case DvdPhysicalDescriptor:
|
||||||
s.type = DVD_STRUCT_PHYSICAL;
|
s.physical.type = DVD_STRUCT_PHYSICAL;
|
||||||
s.physical.layer_num = structure->LayerNumber;
|
s.physical.layer_num = structure->LayerNumber;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DvdCopyrightDescriptor:
|
case DvdCopyrightDescriptor:
|
||||||
s.type = DVD_STRUCT_COPYRIGHT;
|
s.copyright.type = DVD_STRUCT_COPYRIGHT;
|
||||||
s.copyright.layer_num = structure->LayerNumber;
|
s.copyright.layer_num = structure->LayerNumber;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DvdDiskKeyDescriptor:
|
case DvdDiskKeyDescriptor:
|
||||||
s.type = DVD_STRUCT_DISCKEY;
|
s.disckey.type = DVD_STRUCT_DISCKEY;
|
||||||
s.disckey.agid = structure->SessionId;
|
s.disckey.agid = structure->SessionId;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DvdBCADescriptor:
|
case DvdBCADescriptor:
|
||||||
s.type = DVD_STRUCT_BCA;
|
s.bca.type = DVD_STRUCT_BCA;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DvdManufacturerDescriptor:
|
case DvdManufacturerDescriptor:
|
||||||
s.type = DVD_STRUCT_MANUFACT;
|
s.manufact.type = DVD_STRUCT_MANUFACT;
|
||||||
s.manufact.layer_num = structure->LayerNumber;
|
s.manufact.layer_num = structure->LayerNumber;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue