VirtualBox

Changeset 54860 in vbox for trunk/src/VBox/GuestHost


Ignore:
Timestamp:
Mar 20, 2015 9:56:49 AM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
99070
Message:

Host 3D: fix memory leak in crServer.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/GuestHost/OpenGL/util/compositor.cpp

    r53589 r54860  
    557557
    558558    rc = crVrScrCompositorEntryRegionsSet(pCompositor, pEntry, cRegions, paRegions, &fChanged);
    559     if (RT_FAILURE(rc))
    560     {
     559    if (RT_SUCCESS(rc))
     560    {
     561        if (fChanged && CrVrScrCompositorEntryIsUsed(pEntry))
     562        {
     563            rc = crVrScrCompositorEntryEnsureRegionsBounds(pCompositor, pEntry, NULL);
     564            if (RT_SUCCESS(rc))
     565            {
     566                if (pfChanged)
     567                    *pfChanged = fPosChanged || fChanged || fWasInList;
     568            }
     569            else
     570                WARN(("crVrScrCompositorEntryEnsureRegionsBounds failed, rc %d", rc));
     571        }
     572
     573    }
     574    else
    561575        WARN(("crVrScrCompositorEntryRegionsSet failed, rc %d", rc));
    562         return rc;
    563     }
    564 
    565     if (fChanged && CrVrScrCompositorEntryIsUsed(pEntry))
    566     {
    567         rc = crVrScrCompositorEntryEnsureRegionsBounds(pCompositor, pEntry, NULL);
    568         if (RT_FAILURE(rc))
    569         {
    570             WARN(("crVrScrCompositorEntryEnsureRegionsBounds failed, rc %d", rc));
    571             return rc;
    572         }
    573     }
    574 
    575     if (pfChanged)
    576         *pfChanged = fPosChanged || fChanged || fWasInList;
    577 
    578     return VINF_SUCCESS;
     576
     577    if (paTranslatedRects)
     578        RTMemFree(paTranslatedRects);
     579
     580    return rc;
    579581}
    580582
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