OS X: Fix an off-by-one error that was causing the QuickLook and Spotlight plug-ins to crash.

The bug was also present in the app itself, but it didn't crash.

git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@93874 e17a0e51-4ae3-4d35-97c3-1a29b211df97
This commit is contained in:
SND\MaddTheSane_cp 2015-02-07 22:17:23 +00:00
parent 1b1d4c3f6a
commit 527da3c3bb
3 changed files with 6 additions and 6 deletions

View File

@ -156,7 +156,7 @@ NSArray *CreateArrayByEnumeratingMemoryCardAtURL(NSURL *location)
i++;
continue;
}
do {
while (i + x < MAX_MEMCARD_BLOCKS) {
McdBlock tmpBlock;
GetSoloBlockInfo((unsigned char *)memPtr, i + x + 1, &tmpBlock);
if ((tmpBlock.Flags & 0x3) == 0x3) {
@ -167,7 +167,7 @@ NSArray *CreateArrayByEnumeratingMemoryCardAtURL(NSURL *location)
} else {
break;
}
} while (i + x - 1 < MAX_MEMCARD_BLOCKS);
};
PcsxrMemoryObject *obj = [[PcsxrMemoryObject alloc] initWithMcdBlock:&memBlock startingIndex:i size:x];
i += x;
if (MemBlockFlag(memBlock.Flags) == memFlagDeleted) {

View File

@ -172,7 +172,7 @@ Boolean GetMetadataForFile(void *thisInterface, CFMutableDictionaryRef attribute
i++;
continue;
}
do {
while (i + x < MAX_MEMCARD_BLOCKS) {
McdBlock tmpBlock;
GetSoloBlockInfo((unsigned char *)fileCData, i + x + 1, &tmpBlock);
if ((tmpBlock.Flags & 0x3) == 0x3) {
@ -183,7 +183,7 @@ Boolean GetMetadataForFile(void *thisInterface, CFMutableDictionaryRef attribute
} else {
break;
}
} while (i + x - 1 < MAX_MEMCARD_BLOCKS);
};
// Ignore deleted blocks
i += x;
if (MemBlockFlag(memBlock.Flags) == memFlagDeleted) {

View File

@ -108,7 +108,7 @@ static inline void ClearMemcardData(char *to, int dsti, char *str)
i++;
continue;
}
do {
while (i + x < MAX_MEMCARD_BLOCKS) {
McdBlock tmpBlock;
GetMcdBlockInfo(carNum, i + x + 1, &tmpBlock);
if ((tmpBlock.Flags & 0x3) == 0x3) {
@ -119,7 +119,7 @@ static inline void ClearMemcardData(char *to, int dsti, char *str)
} else {
break;
}
} while (i + x - 1 < MAX_MEMCARD_BLOCKS);
};
@autoreleasepool {
PcsxrMemoryObject *obj = [[PcsxrMemoryObject alloc] initWithMcdBlock:&memBlock startingIndex:i size:x];
[tmpMemArray addObject:obj];