VirtualBox

Changeset 64634 in vbox for trunk/src/VBox/Runtime


Ignore:
Timestamp:
Nov 10, 2016 3:11:20 PM (8 years ago)
Author:
vboxsync
Message:

RTPathAbs-generic.cpp: Have to remove '.' too, like the it says on the package, or NT fails to parse the resulting path (RTDir*, RTFsQuery*,++)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/generic/RTPathAbs-generic.cpp

    r62570 r64634  
    291291    for (;;)
    292292    {
    293         if (   pszCur[0] == '.'
     293        char const chFirst = pszCur[0];
     294        if (   chFirst == '.'
    294295            && pszCur[1] == '.'
    295296            && (!pszCur[2] || pszCur[2] == RTPATH_SLASH))
     
    316317            pszCur = pszPrev - 1;
    317318        }
     319        else if (   chFirst == '.'
     320                 && (!pszCur[1] || pszCur[1] == RTPATH_SLASH))
     321        {
     322            /* remove unnecessary '.' */
     323            if (!pszCur[1])
     324            {
     325                if (pszCur != pszTop)
     326                    pszCur[-1] = '\0';
     327                else
     328                    *pszCur = '\0';
     329                break;
     330            }
     331            memmove(pszCur, pszCur + 2, strlen(pszCur + 2) + 1);
     332            continue;
     333        }
    318334        else
    319335        {
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