Menu

CPdbCache::SearchSymStorageDir() infinite loop

ch1rh0
2015-06-02
2015-06-03
  • ch1rh0

    ch1rh0 - 2015-06-02

    If TryPdbFile() returns false, the while block below will enter infinite loop.

        // Try candidates, prefer those ones having the smallest age difference
        std::map<int, std::wstring>::iterator it = asCandidates.begin();
        while(it!=asCandidates.end())
        {
            // Try to open the file
            sPdbFileName = it->second;
            sPdbFileName += slash;
            sPdbFileName += sPdbName;
            if(TryPdbFile(sPdbFileName, sPeFileName, sGUIDnAge, ppPdbReader, ppPeReader, pnEntry, true, sErrorMsg, bExactMatchBuildAge))
            {
                return true;
            }
        }
    
     
  • Daryl Fortney

    Daryl Fortney - 2015-06-03

    missing iterator increment.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.