VirtualBox

Changeset 55798 in vbox


Ignore:
Timestamp:
May 11, 2015 10:42:40 AM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
100235
Message:

3D: restoring state: ignore invalid DEPTH/STENCIL data when restoring state if SSM version < SHCROGL_SSM_VERSION_WITH_SEPARATE_DEPTH_STENCIL_BUFFERS.

Location:
trunk/src/VBox
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/GuestHost/OpenGL/include/cr_glstate.h

    r52329 r55798  
    271271    /* override default draw and read buffers to be used for offscreen rendering */
    272272    GLint idOverrrideFBO;
     273    uint32_t u32Version;
    273274    uint32_t cElements;
    274275    CRFBDataElement aElements[1];
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/state_diff.c

    r55212 r55798  
    314314#endif
    315315
     316            /* Before SSM version SHCROGL_SSM_VERSION_WITH_SEPARATE_DEPTH_STENCIL_BUFFERS
     317             * saved state file contined invalid DEPTH/STENCIL data. In order to prevent
     318             * crashes and improper guest App behavior, this data should be ignored. */
     319            if (   data->u32Version < SHCROGL_SSM_VERSION_WITH_SEPARATE_DEPTH_STENCIL_BUFFERS
     320                && (   el->enmFormat == GL_DEPTH_COMPONENT
     321                    || el->enmFormat == GL_STENCIL_INDEX
     322                    || el->enmFormat == GL_DEPTH_STENCIL))
     323                continue;
     324
    316325            if (el->enmFormat == GL_DEPTH_COMPONENT || el->enmFormat == GL_DEPTH_STENCIL)
    317326            {
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_main.c

    r55766 r55798  
    12891289        }
    12901290    }
     1291
     1292    pData->u32Version = version;
    12911293
    12921294    pData->cElements = 0;
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