VirtualBox

Ignore:
Timestamp:
Sep 13, 2010 5:59:01 PM (14 years ago)
Author:
vboxsync
Message:

wddm/3d: wine multi-swapchain fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/wined3d/arb_program_shader.c

    r28475 r32461  
    586586static void shader_arb_load_constants(const struct wined3d_context *context, char usePixelShader, char useVertexShader)
    587587{
     588#ifdef VBOXWDDM
     589    IWineD3DDeviceImpl *device = context->device;
     590#else
    588591    IWineD3DDeviceImpl *device = context->swapchain->device;
     592#endif
    589593    IWineD3DStateBlockImpl* stateBlock = device->stateBlock;
    590594    const struct wined3d_gl_info *gl_info = context->gl_info;
     
    616620    /* We don't want shader constant dirtification to be an O(contexts), so just dirtify the active
    617621     * context. On a context switch the old context will be fully dirtified */
     622#ifdef VBOXWDDM
     623    if (!context || context->device != This) return;
     624#else
    618625    if (!context || context->swapchain->device != This) return;
     626#endif
    619627
    620628    memset(context->vshader_const_dirty + start, 1, sizeof(*context->vshader_const_dirty) * count);
     
    629637    /* We don't want shader constant dirtification to be an O(contexts), so just dirtify the active
    630638     * context. On a context switch the old context will be fully dirtified */
     639#ifdef VBOXWDDM
     640    if (!context || context->device != This) return;
     641#else
    631642    if (!context || context->swapchain->device != This) return;
     643#endif
    632644
    633645    memset(context->pshader_const_dirty + start, 1, sizeof(*context->pshader_const_dirty) * count);
     
    43494361static void shader_arb_select(const struct wined3d_context *context, BOOL usePS, BOOL useVS)
    43504362{
     4363#ifdef VBOXWDDM
     4364    IWineD3DDeviceImpl *This = context->device;
     4365#else
    43514366    IWineD3DDeviceImpl *This = context->swapchain->device;
     4367#endif
    43524368    struct shader_arb_priv *priv = This->shader_priv;
    43534369    const struct wined3d_gl_info *gl_info = context->gl_info;
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