VirtualBox

Ignore:
Timestamp:
Jun 14, 2017 7:59:31 PM (7 years ago)
Author:
vboxsync
Message:

IPRT: More ISO maker code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/common/fs/isomaker.cpp

    r67399 r67412  
    36013601    {
    36023602        PRTFSISOMAKERNAME pChild = *ppChild++;
    3603         if (pChild->pszTransNm)
     3603        if (pChild->cchTransNm)
    36043604        {
    36053605            /** @todo TRANS.TBL codeset, currently using UTF-8 which is probably not it.
     
    36723672            pFile = RTListGetNext(&pIsoMaker->FinalizedFiles, pFile, RTFSISOMAKERFILE, FinalizedEntry);
    36733673            AssertReturn(pFile, VERR_INTERNAL_ERROR_3);
    3674         } while ((offInFile = offUnsigned - pFile->offData) < RT_ALIGN_64(pFile->cbData, RTFSISOMAKER_SECTOR_SIZE));
     3674        } while ((offInFile = offUnsigned - pFile->offData) >= RT_ALIGN_64(pFile->cbData, RTFSISOMAKER_SECTOR_SIZE));
    36753675    }
    36763676    else
     
    36813681            pFile = RTListGetPrev(&pIsoMaker->FinalizedFiles, pFile, RTFSISOMAKERFILE, FinalizedEntry);
    36823682            AssertReturn(pFile, VERR_INTERNAL_ERROR_3);
    3683         } while ((offInFile = offUnsigned - pFile->offData) < RT_ALIGN_64(pFile->cbData, RTFSISOMAKER_SECTOR_SIZE));
     3683        } while ((offInFile = offUnsigned - pFile->offData) >= RT_ALIGN_64(pFile->cbData, RTFSISOMAKER_SECTOR_SIZE));
    36843684    }
    36853685
     
    37023702    if (offInFile < pFile->cbData)
    37033703    {
    3704         int rc;
     3704        int    rc;
    37053705        size_t cbToRead = RT_MIN(cbBuf, pFile->cbData - offInFile);
     3706
    37063707        switch (pFile->enmSrcType)
    37073708        {
     
    37113712                    rc = RTVfsChainOpenFile(pFile->u.pszSrcPath, RTFILE_O_READ | RTFILE_O_DENY_NONE | RTFILE_O_OPEN,
    37123713                                            &pThis->hVfsSrcFile, NULL, NULL);
    3713                     if (RT_FAILURE(rc))
    3714                         return rc;
     3714                    AssertMsgRCReturn(rc, ("%s -> %Rrc\n", pFile->u.pszSrcPath, rc), rc);
    37153715                }
    37163716                rc = RTVfsFileReadAt(pThis->hVfsSrcFile, offInFile, pbBuf, cbToRead, NULL);
     3717                AssertRC(rc);
    37173718                break;
    37183719
    37193720            case RTFSISOMAKERSRCTYPE_VFS_FILE:
    37203721                rc = RTVfsFileReadAt(pFile->u.hVfsFile, offInFile, pbBuf, cbToRead, NULL);
     3722                AssertRC(rc);
    37213723                break;
    37223724
     
    37253727                {
    37263728                    rc = rtFsIsoMakerOutFile_ProduceTransTbl(pThis, pFile);
    3727                     if (RT_FAILURE(rc))
    3728                         return rc;
     3729                    AssertRCReturn(rc, rc);
    37293730                }
    3730                 rc = RTVfsFileReadAt(pFile->u.hVfsFile, offInFile, pbBuf, cbToRead, NULL);
     3731                rc = RTVfsFileReadAt(pThis->hVfsSrcFile, offInFile, pbBuf, cbToRead, NULL);
     3732                AssertRC(rc);
    37313733                break;
    37323734
     
    37423744         */
    37433745        if (   cbToRead < cbBuf
     3746            && (pFile->cbData & RTFSISOMAKER_SECTOR_OFFSET_MASK)
    37443747            && offInFile + cbToRead == pFile->cbData)
    37453748        {
     
    39213924 * @param   pName       The namespace node.
    39223925 * @param   fUnicode    Set if the name should be translated to big endian
    3923  *                      UTF-16 / UCS-2, i.e. we're in the joliet namespace.
     3926 *                      UTF-16BE / UCS-2BE, i.e. we're in the joliet namespace.
    39243927 * @param   pbBuf       The buffer.  This is at least pName->cbDirRec bytes big.
    39253928 */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette