Author: fireball Date: Tue Jul 17 10:31:03 2012 New Revision: 56907 URL: http://svn.reactos.org/svn/reactos?rev=56907&view=rev Log: [SCSIPORT] - Fix a regression from r56863. New logic is: the requested data size is sizeof(ULONG), so if the result read is less than that - continue to the next slot. Thanks to SomeGuy for pointing out the problem. See issue #7147 for more details.
Modified: trunk/reactos/drivers/storage/scsiport/scsiport.c Modified: trunk/reactos/drivers/storage/scsiport/scsiport.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/scsiport/scsiport.c?rev=56907&r1=56906&r2=56907&view=diff ============================================================================== --- trunk/reactos/drivers/storage/scsiport/scsiport.c [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/scsiport/scsiport.c [iso-8859-1] Tue Jul 17 10:31:03 2012 @@ -2351,7 +2351,7 @@ return FALSE; /* Check if result is PCI_INVALID_VENDORID or too small */ - if ((DataSize < (ULONG)PCI_COMMON_HDR_LENGTH) || + if ((DataSize < sizeof(ULONG)) || (PciConfig.VendorID == PCI_INVALID_VENDORID)) { /* Continue to try the next function */