Context Navigation


Changeset 256 for branches


Ignore:
Timestamp:
May 23, 2017, 8:28:27 AM (9 years ago)
Author:
erdmann
Message:

merging Valerys latest changes

Location:
branches/lars
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/lars

  • branches/lars/src/ifs/fat32.c

    r250 r256
    60886088 pNew1->u.File.ulCreateTimestp = pNew1->u.File.ulLastModifiedTimestp;
    60896089 pNew1->u.File.ulLastAccessedTimestp = pNew1->u.File.ulLastModifiedTimestp;
    6090(削除) (削除ここまで)
    6091(削除) (削除ここまで)
    60926090 }
    60936091 }
    72217219 if (!pNew || !pszLongName)
    72227220 {
    7223(削除) Message("Modify directory: Invalid parameters 1"); (削除ここまで)
    72247221 return ERROR_INVALID_PARAMETER;
    72257222 }
    72607257 if (!pOld)
    72617258 {
    7262(削除) Message("Modify directory: Invalid parameter 2 "); (削除ここまで)
    72637259 return ERROR_INVALID_PARAMETER;
    72647260 }
    72687264 if (!pDirectory)
    72697265 {
    7270(削除) Message("Modify directory: Not enough memory"); (削除ここまで)
    72717266 return ERROR_NOT_ENOUGH_MEMORY;
    72727267 }
    75177512 sizeof(DIRENTRY1) * ((pWork-2)->u.File.bSecondaryCount + 1));
    75187513
    7519(削除) memcpy(pWork++, pNew, sizeof (DIRENTRY1)); (削除ここまで)
    7520(削除) memcpy(pWork++, pStreamNew, sizeof (DIRENTRY1)); (削除ここまで)
    7521(削除) (削除ここまで)
    75227514 //if (ulPrevCluster == 1)
    75237515 // // reading root directory on FAT12/FAT16
    75557547
    75567548 pWork = CompactDir1(pDir2, ulBytesToRead, usEntriesNeeded);
    7557(削除) //pWork = fSetLongName(pWork, pszLongName, bCheck); (削除ここまで)
    7558(削除) //memcpy(pWork, &DirNew, sizeof (DIRENTRY)); (削除ここまで)
    75597549 pWork3 = fSetLongName1(pWork+2, pszLongName, &usNameHash);
    75607550 pNew->u.File.bSecondaryCount = pWork3 - pWork - 1;
    76207610 // }
    76217611 //else
    7622 ulNextCluster = GetNextCluster(pVolInfo, pDirSHInfo, ulCluster);(削除) //// (削除ここまで)
    7612 ulNextCluster = GetNextCluster(pVolInfo, pDirSHInfo, ulCluster);(追記) (追記ここまで)
    76237613 if (!ulNextCluster)
    76247614 ulNextCluster = pVolInfo->ulFatEof;
    76537643 {
    76547644 free(pDirectory);
    7655(削除) Message("Modify Directory: Disk Full!"); (削除ここまで)
    76567645 return ERROR_DISK_FULL;
    76577646 }
  • branches/lars/src/ifs/ifsea.c

    r249 r256
    797797 else
    798798 {
    799(追記) pDirNew->bEntryType = ENTRY_TYPE_FILE; (追記ここまで)
    800(追記) DirStreamNew.bEntryType = ENTRY_TYPE_STREAM_EXT; (追記ここまで)
    799801 pDirNew->u.File.usFileAttr = FILE_HIDDEN | FILE_SYSTEM | FILE_READONLY;
    800802 DirStreamNew.u.Stream.ullValidDataLen = pFEAL->cbList;
    846848 else
    847849 {
    850(追記) pDirNew->bEntryType = ENTRY_TYPE_FILE; (追記ここまで)
    851(追記) DirStreamNew.bEntryType = ENTRY_TYPE_STREAM_EXT; (追記ここまで)
    848852 DirStreamNew.u.Stream.ullValidDataLen = pFEAL->cbList;
    849853 DirStreamNew.u.Stream.ullDataLen =
  • branches/lars/src/ifs/ifsfile.c

    r252 r256
    199199 if (!(usOpenFlag & FILE_CREATE))
    200200 {
    201 rc = ERROR_OPEN_FAILED;(削除) //// (削除ここまで)
    201 rc = ERROR_OPEN_FAILED;(追記) (追記ここまで)
    202202 goto FS_OPENCREATEEXIT;
    203203 }
    288288 if (size > (ULONGLONG)LONG_MAX)
    289289 size = (ULONGLONG)LONG_MAX;
    290(追記) } (追記ここまで)
    291(追記) (追記ここまで)
    292(追記) if (pVolInfo->bFatType == FAT_TYPE_EXFAT) (追記ここまで)
    293(追記) { (追記ここまで)
    294(追記) PDIRENTRY1 pDirEntry = (PDIRENTRY1)&DirEntry; (追記ここまで)
    295(追記) pDirEntry->bEntryType = ENTRY_TYPE_FILE; (追記ここまで)
    296(追記) DirEntryStream.u.Stream.bAllocPossible = 1; (追記ここまで)
    297(追記) DirEntryStream.u.Stream.bNoFatChain = pOpenInfo->pSHInfo->fNoFatChain; (追記ここまで)
    298(追記) DirEntryStream.bEntryType = ENTRY_TYPE_STREAM_EXT; (追記ここまで)
    299(追記) DirEntryStream.u.Stream.ulFirstClus = ulCluster; (追記ここまで)
    300(追記) DirEntryStream.u.Stream.ullValidDataLen = 0; (追記ここまで)
    301(追記) DirEntryStream.u.Stream.ullDataLen = 0; (追記ここまで)
    290302 }
    291303
    313325 (size / pVolInfo->ulClusterSize) * pVolInfo->ulClusterSize +
    314326 (size % pVolInfo->ulClusterSize ? pVolInfo->ulClusterSize : 0);
    327(追記) DirEntryStream.u.Stream.bAllocPossible = 1; (追記ここまで)
    315328 DirEntryStream.u.Stream.bNoFatChain = pOpenInfo->pSHInfo->fNoFatChain;
    316329 }
  • branches/lars/src/ifs/ifsfind.c

    r250 r256
    280280
    281281 memcpy(&pFindInfo->pInfo->EAOP, &EAOP, sizeof (EAOP));
    282 pFindInfo->(削除) (削除ここまで)usEntriesPerBlock = pVolInfo->ulBlockSize / sizeof (DIRENTRY);
    283 pFindInfo->(削除) (削除ここまで)usBlockIndex = 0;
    282 pFindInfo->(追記) pInfo-> (追記ここまで)usEntriesPerBlock = pVolInfo->ulBlockSize / sizeof (DIRENTRY);
    283 pFindInfo->(追記) pInfo-> (追記ここまで)usBlockIndex = 0;
    284284 pFindInfo->pInfo->rgClusters[0] = ulDirCluster;
    285 pFindInfo->(削除) (削除ここまで)usTotalBlocks = usNumBlocks;
    285 pFindInfo->(追記) pInfo-> (追記ここまで)usTotalBlocks = usNumBlocks;
    286286 pFindInfo->pInfo->pDirEntries =
    287287 (PDIRENTRY)(&pFindInfo->pInfo->rgClusters[usNumClusters]);
    299299 if (ulDirCluster == 1)
    300300 // FAT12/FAT16 root directory case
    301 pFindInfo->(削除) (削除ここまで)ulMaxEntry = pVolInfo->BootSect.bpb.RootDirEntries;
    301 pFindInfo->(追記) pInfo-> (追記ここまで)ulMaxEntry = pVolInfo->BootSect.bpb.RootDirEntries;
    302302 else
    303 pFindInfo->(削除) (削除ここまで)ulMaxEntry = ((ULONG)pVolInfo->ulClusterSize / sizeof (DIRENTRY)) * usNumClusters;
    303 pFindInfo->(追記) pInfo-> (追記ここまで)ulMaxEntry = ((ULONG)pVolInfo->ulClusterSize / sizeof (DIRENTRY)) * usNumClusters;
    304304
    305305 if (!GetBlock(pVolInfo, pFindInfo, 0))
    309309 }
    310310
    311 pFindInfo->(削除) (削除ここまで)ulCurEntry = 0;
    311 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry = 0;
    312312
    313313 if (usAttr & 0x0040)
    314314 {
    315 pFindInfo->(削除) (削除ここまで)fLongNames = TRUE;
    315 pFindInfo->(追記) pInfo-> (追記ここまで)fLongNames = TRUE;
    316316 usAttr &= ~0x0040;
    317317 }
    318318 else
    319 pFindInfo->(削除) (削除ここまで)fLongNames = FALSE;
    320
    321 pFindInfo->(削除) (削除ここまで)bMustAttr = (BYTE)(usAttr >> 8);
    319 pFindInfo->(追記) pInfo-> (追記ここまで)fLongNames = FALSE;
    320
    321 pFindInfo->(追記) pInfo-> (追記ここまで)bMustAttr = (BYTE)(usAttr >> 8);
    322322 usAttr |= (FILE_READONLY | FILE_ARCHIVED);
    323323 usAttr &= (FILE_READONLY | FILE_HIDDEN | FILE_SYSTEM | FILE_DIRECTORY | FILE_ARCHIVED);
    324 pFindInfo->(削除) (削除ここまで)bAttr = (BYTE)~usAttr;
    324 pFindInfo->(追記) pInfo-> (追記ここまで)bAttr = (BYTE)~usAttr;
    325325
    326326 if (usLevel == FIL_QUERYEASFROMLIST || usLevel == FIL_QUERYEASFROMLISTL)
    356356 {
    357357 if (usFlags == FF_GETPOS)
    358 *pulOrdinal = pFindInfo->(削除) (削除ここまで)ulCurEntry - 1;
    358 *pulOrdinal = pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry - 1;
    359359 }
    360360 if (rc)
    413413 if (f32Parms.fMessageActive & LOG_FS)
    414414 Message("FS_FINDFROMNAME, curpos = %lu, requested %lu",
    415 pFindInfo->(削除) (削除ここまで)ulCurEntry, ulPosition);
    416
    417 pFindInfo->(削除) (削除ここまで)ulCurEntry = ulPosition + 1;
    415 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry, ulPosition);
    416
    417 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry = ulPosition + 1;
    418418 return FS_FINDNEXT(pfsfsi, pfsfsd, pData, cbData, pcMatch, usLevel, usFlags);
    419419}
    565565 {
    566566 if (usFlags == FF_GETPOS)
    567 *pulOrdinal = pFindInfo->(削除) (削除ここまで)ulCurEntry - 1;
    567 *pulOrdinal = pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry - 1;
    568568 }
    569569 if (rc)
    610610
    611611 memset(szLongName, 0, sizeof szLongName);
    612 pDir = &pFindInfo->pInfo->pDirEntries[pFindInfo->(削除) ulCurEntry % pFind (削除ここまで)Info->usEntriesPerBlock];
    612 pDir = &pFindInfo->pInfo->pDirEntries[pFindInfo->(追記) pInfo->ulCurEntry % pFindInfo->p (追記ここまで)Info->usEntriesPerBlock];
    613613 bCheck1 = 0;
    614 while (pFindInfo->(削除) ulCurEntry < pFind (削除ここまで)Info->ulMaxEntry)
    614 while (pFindInfo->(追記) pInfo->ulCurEntry < pFindInfo->p (追記ここまで)Info->ulMaxEntry)
    615615 {
    616616 memset(szShortName, 0, sizeof(szShortName)); // vs
    617617
    618 usBlockIndex = (USHORT)(pFindInfo->(削除) ulCurEntry / pFind (削除ここまで)Info->usEntriesPerBlock);
    619 if (usBlockIndex != pFindInfo->(削除) (削除ここまで)usBlockIndex)
    618 usBlockIndex = (USHORT)(pFindInfo->(追記) pInfo->ulCurEntry / pFindInfo->p (追記ここまで)Info->usEntriesPerBlock);
    619 if (usBlockIndex != pFindInfo->(追記) pInfo-> (追記ここまで)usBlockIndex)
    620620 {
    621621 if (!GetBlock(pVolInfo, pFindInfo, usBlockIndex))
    622622 return ERROR_SYS_INTERNAL;
    623 pDir = &pFindInfo->pInfo->pDirEntries[pFindInfo->(削除) ulCurEntry % pFind (削除ここまで)Info->usEntriesPerBlock];
    623 pDir = &pFindInfo->pInfo->pDirEntries[pFindInfo->(追記) pInfo->ulCurEntry % pFindInfo->p (追記ここまで)Info->usEntriesPerBlock];
    624624 }
    625625
    632632 else if ((pDir->bAttr & FILE_VOLID) != FILE_VOLID)
    633633 {
    634 if (!(pDir->bAttr & pFindInfo->(削除) (削除ここまで)bAttr))
    634 if (!(pDir->bAttr & pFindInfo->(追記) pInfo-> (追記ここまで)bAttr))
    635635 {
    636636 BYTE bCheck2 = GetVFATCheckSum(pDir);
    682682 FSH_UPPERCASE(szUpperName, sizeof szUpperName, szUpperName);
    683683
    684 if( !pFindInfo->(削除) (削除ここまで)fLongNames )
    684 if( !pFindInfo->(追記) pInfo-> (追記ここまで)fLongNames )
    685685 strcpy( szLongName, szShortName );
    686686
    688688 Check for MUST HAVE attributes
    689689 */
    690 if (!rc && pFindInfo->(削除) (削除ここまで)bMustAttr)
    691 {(削除) (削除ここまで)
    692 if ((pDir->bAttr & pFindInfo->(削除) bMustAttr) != pFind (削除ここまで)Info->bMustAttr)
    690 if (!rc && pFindInfo->(追記) pInfo-> (追記ここまで)bMustAttr)
    691 {(追記) (追記ここまで)
    692 if ((pDir->bAttr & pFindInfo->(追記) pInfo->bMustAttr) != pFindInfo->p (追記ここまで)Info->bMustAttr)
    693693 rc = 1;
    694694 }
    701701 }
    702702 if (!rc && f32Parms.fMessageActive & LOG_FIND)
    703 Message("%lu : %s, %s", pFindInfo->(削除) (削除ここまで)ulCurEntry, szLongName, szShortName );
    703 Message("%lu : %s, %s", pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry, szLongName, szShortName );
    704704
    705705 if (!rc && usLevel == FIL_STANDARD)
    726726 *ppData = pfFind->achName + pfFind->cchName + 1;
    727727 (*pcbData) -= *ppData - pStart;
    728 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    728 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    729729 return 0;
    730730 }
    752752 *ppData = pfFind->achName + pfFind->cchName + 1;
    753753 (*pcbData) -= *ppData - pStart;
    754 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    754 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    755755 return 0;
    756756 }
    801801 *ppData = pfFind->achName + pfFind->cchName + 1;
    802802 (*pcbData) -= *ppData - pStart;
    803 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    803 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    804804 return 0;
    805805 }
    850850 *ppData = pfFind->achName + pfFind->cchName + 1;
    851851 (*pcbData) -= *ppData - pStart;
    852 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    852 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    853853 return 0;
    854854 }
    935935 (*pcbData) -= (strlen(szLongName) + 1);
    936936
    937 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    937 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    938938 return rc;
    939939 }
    10201020 (*pcbData) -= (strlen(szLongName) + 1);
    10211021
    1022 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1022 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    10231023 return rc;
    10241024 }
    10271027 }
    10281028 }
    1029 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1029 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    10301030 pDir++;
    10311031 }
    10541054
    10551055 memset(szLongName, 0, sizeof szLongName);
    1056 pDir = (PDIRENTRY1)&pFindInfo->pInfo->pDirEntries[pFindInfo->(削除) ulCurEntry % pFind (削除ここまで)Info->usEntriesPerBlock];
    1057 while (pFindInfo->(削除) ulCurEntry < pFind (削除ここまで)Info->ulMaxEntry)
    1058 {(削除) (削除ここまで)
    1059 usBlockIndex = (USHORT)(pFindInfo->(削除) ulCurEntry / pFind (削除ここまで)Info->usEntriesPerBlock);
    1060 if (usBlockIndex != pFindInfo->(削除) (削除ここまで)usBlockIndex)
    1056 pDir = (PDIRENTRY1)&pFindInfo->pInfo->pDirEntries[pFindInfo->(追記) pInfo->ulCurEntry % pFindInfo->p (追記ここまで)Info->usEntriesPerBlock];
    1057 while (pFindInfo->(追記) pInfo->ulCurEntry < pFindInfo->p (追記ここまで)Info->ulMaxEntry)
    1058 {(追記) (追記ここまで)
    1059 usBlockIndex = (USHORT)(pFindInfo->(追記) pInfo->ulCurEntry / pFindInfo->p (追記ここまで)Info->usEntriesPerBlock);
    1060 if (usBlockIndex != pFindInfo->(追記) pInfo-> (追記ここまで)usBlockIndex)
    10611061 {
    10621062 if (!GetBlock(pVolInfo, pFindInfo, usBlockIndex))
    10631063 return ERROR_SYS_INTERNAL;
    1064 pDir = (PDIRENTRY1)&pFindInfo->pInfo->pDirEntries[pFindInfo->(削除) ulCurEntry % pFind (削除ここまで)Info->usEntriesPerBlock];
    1064 pDir = (PDIRENTRY1)&pFindInfo->pInfo->pDirEntries[pFindInfo->(追記) pInfo->ulCurEntry % pFindInfo->p (追記ここまで)Info->usEntriesPerBlock];
    10651065 }
    10661066
    10681068 {
    10691069 // end of directory reached
    1070 pFindInfo->(削除) ulMaxEntry = pFind (削除ここまで)Info->ulCurEntry;
    1070 pFindInfo->(追記) pInfo->ulMaxEntry = pFindInfo->p (追記ここまで)Info->ulCurEntry;
    10711071 return ERROR_NO_MORE_FILES;
    10721072 }
    11041104 Check for MUST HAVE attributes
    11051105 */
    1106 if (!rc && pFindInfo->(削除) (削除ここまで)bMustAttr)
    1107 {(削除) (削除ここまで)
    1108 if ((attrFile & pFindInfo->(削除) bMustAttr) != pFind (削除ここまで)Info->bMustAttr)
    1106 if (!rc && pFindInfo->(追記) pInfo-> (追記ここまで)bMustAttr)
    1107 {(追記) (追記ここまで)
    1108 if ((attrFile & pFindInfo->(追記) pInfo->bMustAttr) != pFindInfo->p (追記ここまで)Info->bMustAttr)
    11091109 rc = 1;
    11101110 }
    11221122 *ppData = pfFind->achName + pfFind->cchName + 1;
    11231123 (*pcbData) -= *ppData - pStart;
    1124 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1124 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    11251125 return 0;
    11261126 }
    11371137 *ppData = pfFind->achName + pfFind->cchName + 1;
    11381138 (*pcbData) -= *ppData - pStart;
    1139 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1139 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    11401140 return 0;
    11411141 }
    11771177 *ppData = pfFind->achName + pfFind->cchName + 1;
    11781178 (*pcbData) -= *ppData - pStart;
    1179 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1179 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    11801180 return 0;
    11811181 }
    12161216 *ppData = pfFind->achName + pfFind->cchName + 1;
    12171217 (*pcbData) -= *ppData - pStart;
    1218 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1218 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    12191219 return 0;
    12201220 }
    12881288 (*pcbData) -= (usNameLen + 1);
    12891289
    1290 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1290 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    12911291 return rc;
    12921292 }
    13601360 (*pcbData) -= (usNameLen + 1);
    13611361
    1362 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1362 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    13631363 return rc;
    13641364 }
    14151415 fEAS = pDir->u.File.fEAS;
    14161416
    1417 if (!(pDir->u.File.usFileAttr & pFindInfo->(削除) (削除ここまで)bAttr))
    1417 if (!(pDir->u.File.usFileAttr & pFindInfo->(追記) pInfo-> (追記ここまで)bAttr))
    14181418 {
    14191419 if (usLevel == FIL_STANDARD)
    15011501 }
    15021502 }
    1503 pFindInfo->(削除) (削除ここまで)ulCurEntry++;
    1503 pFindInfo->(追記) pInfo-> (追記ここまで)ulCurEntry++;
    15041504 pDir++;
    15051505 }
    17441744 }
    17451745
    1746 if (usBlockIndex >= pFindInfo->(削除) (削除ここまで)usTotalBlocks)
    1746 if (usBlockIndex >= pFindInfo->(追記) pInfo-> (追記ここまで)usTotalBlocks)
    17471747 return FALSE;
    17481748
    17511751 if (fRootDir)
    17521752 {
    1753 usIndex = pFindInfo->(削除) (削除ここまで)usBlockIndex / usBlocksPerCluster;
    1753 usIndex = pFindInfo->(追記) pInfo-> (追記ここまで)usBlockIndex / usBlocksPerCluster;
    17541754 ulSector = pVolInfo->BootSect.bpb.ReservedSectors +
    17551755 pVolInfo->BootSect.bpb.SectorsPerFat * pVolInfo->BootSect.bpb.NumberOfFATs +
    17571757 usSectorsRead = usIndex * pVolInfo->SectorsPerCluster;
    17581758 }
    1759 for (usIndex = pFindInfo->(削除) (削除ここまで)usBlockIndex / usBlocksPerCluster; usIndex < usClusterIndex; usIndex++)
    1759 for (usIndex = pFindInfo->(追記) pInfo-> (追記ここまで)usBlockIndex / usBlocksPerCluster; usIndex < usClusterIndex; usIndex++)
    17601760 {
    17611761 if (fRootDir)
    18141814 pFindInfo->pInfo->rgClusters[0] = 1;
    18151815
    1816 pFindInfo->(削除) (削除ここまで)usBlockIndex = usBlockIndex;
    1816 pFindInfo->(追記) pInfo-> (追記ここまで)usBlockIndex = usBlockIndex;
    18171817 return TRUE;
    18181818}
  • branches/lars/src/ifs/ifsmount.c

    r249 r256
    628628 fGetSetVolLabel(pVolInfo, INFO_RETRIEVE, pszVolLabel, &usSize);
    629629 // prevent writing the FSInfo sector in pVolInfo->pbFatSector buffer
    630 // over 0 (削除) z (削除ここまで)ector of 1st FAT on unmount if pVolInfo->ulCurFatSector == 0
    630 // over 0 (追記) s (追記ここまで)ector of 1st FAT on unmount if pVolInfo->ulCurFatSector == 0
    631631 // (see MarkDiskStatus)
    632632 pVolInfo->ulCurFatSector = 0xffff;
    10631063 }
    10641064
    1065 if (pSect->bBootSig != 0x29 && pSect->bBootSig != 0x28)
    1066 {
    1067 // old-style pre-DOS 4.0 BPB
    1065 if (pSect->bJmp[1] < 0x29)
    1066 {
    1067 // old-style pre-DOS 4.0 BPB (jump offset < 0x29, which
    1068 // means that FS name and Serial No. are missing)
    10681069 if (TotClus < 0xff6)
    10691070 return FAT_TYPE_FAT12;
  • branches/lars/src/include/fat32ifs.h

    r250 r256
    220220PROCINFO ProcInfo;
    221221PDIRENTRY pDirEntries;
    222(削除) ULONG rgClusters[1]; (削除ここまで)
    223(削除) } FINFO, *PFINFO; (削除ここまで)
    224(削除) (削除ここまで)
    225(削除) typedef struct _FindInfo /* MAX 24 BYTES ! */ (削除ここまで)
    226(削除) { (削除ここまで)
    227(削除) PFINFO pInfo; (削除ここまで)
    228(削除) PSHOPENINFO pSHInfo; (削除ここまで)
    229222ULONG ulCurEntry;
    230223ULONG ulMaxEntry;
    235228BYTE bAttr;
    236229BYTE bMustAttr;
    230(追記) ULONG rgClusters[1]; (追記ここまで)
    231(追記) } FINFO, *PFINFO; (追記ここまで)
    232(追記) (追記ここまで)
    233(追記) typedef struct _FindInfo /* MAX 24 BYTES ! */ (追記ここまで)
    234(追記) { (追記ここまで)
    235(追記) PFINFO pInfo; (追記ここまで)
    236(追記) PSHOPENINFO pSHInfo; (追記ここまで)
    237237} FINDINFO, *PFINDINFO;
    238238
Note: See TracChangeset for help on using the changeset viewer.

AltStyle によって変換されたページ (->オリジナル) /