VirtualBox

Changeset 93098 in vbox for trunk/src/VBox/Main/src-server


Ignore:
Timestamp:
Dec 29, 2021 10:55:15 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
149112
Message:

Main/UnattendedOs2Installer: Annoying clang warnings.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-server/UnattendedOs2Installer.cpp

    r93096 r93098  
    847847        pszMarker += sizeof("START[") - 1;
    848848        const char *pszTail = splitFileLocateSubstring(pszMarker, (size_t)(pszEnd - pszMarker), RT_STR_TUPLE("]@@"));
     849        size_t const cchFilename = (size_t)(pszTail - pszMarker);
    849850        if (   !pszTail
    850             || pszTail - pszMarker > 64
    851             || memchr(pszMarker, '\\', (size_t)(pszTail - pszMarker))
    852             || memchr(pszMarker, '/',  (size_t)(pszTail - pszMarker))
    853             || memchr(pszMarker, ':',  (size_t)(pszTail - pszMarker))
    854            )
     851            || cchFilename > 64
     852            || memchr(pszMarker, '\\', cchFilename)
     853            || memchr(pszMarker, '/',  cchFilename)
     854            || memchr(pszMarker, ':',  cchFilename)
     855            || memchr(pszMarker, '\0', cchFilename) )
    855856            return mpParent->setErrorBoth(E_FAIL, VERR_PARSE_ERROR,
    856857                                          tr("Malformed splitter tag in '%s' at offset %p: @@VBOX_SPLITTER_START[%.64s"),
    857                                           pszFileToSplit, (size_t)(pszEnd - pszMarker), pszMarker);
    858         int vrc = RTStrValidateEncodingEx(pszMarker, (size_t)(pszTail - pszMarker), RTSTR_VALIDATE_ENCODING_EXACT_LENGTH);
     858                                          pszFileToSplit, cchFilename, pszMarker);
     859        int vrc = RTStrValidateEncodingEx(pszMarker, cchFilename, RTSTR_VALIDATE_ENCODING_EXACT_LENGTH);
    859860        if (RT_FAILURE(vrc))
    860861            return mpParent->setErrorBoth(E_FAIL, vrc,
    861862                                          tr("Malformed splitter tag in '%s' at offset %p: @@VBOX_SPLITTER_START[%.*Rhxs"),
    862                                           pszFileToSplit, (size_t)(pszEnd - pszMarker), pszTail - pszMarker, pszMarker);
     863                                          pszFileToSplit, cchFilename, pszTail - pszMarker, pszMarker);
    863864        const char *pszFilename;
    864865        try
    865866        {
    866             pszFilename = rVecSplitFiles.append().assign(pszMarker, pszTail - pszMarker).c_str();
     867            pszFilename = rVecSplitFiles.append().assign(pszMarker, cchFilename).c_str();
    867868        }
    868869        catch (std::bad_alloc &)
     
    893894                                          pszFileToSplit, (size_t)(pszEnd - pszMarker), pszMarker);
    894895        pszMarker += sizeof("END[") - 1;
    895         size_t const cchFilename = strlen(pszFilename);
    896896        if (   strncmp(pszMarker, pszFilename, cchFilename) != 0
    897897            || pszMarker[cchFilename] != ']'
Note: See TracChangeset for help on using the changeset viewer.

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