vl: change the xvmc state_tracker to the new gallium API
authorThomas Balling Sørensen <tball@tball-laptop.(none)>
Tue, 5 Oct 2010 13:18:29 +0000 (15:18 +0200)
committerThomas Balling Sørensen <tball@tball-laptop.(none)>
Tue, 5 Oct 2010 13:18:29 +0000 (15:18 +0200)
src/gallium/state_trackers/xorg/xvmc/subpicture.c

index e0c9e303817a6b7a4891fc5a6ca15fd7fa5fb6e3..4f6c80d4beecb128468b6660f9d0db895228cd38 100644 (file)
@@ -211,18 +211,27 @@ Status XvMCClearSubpicture(Display *dpy, XvMCSubpicture *subpicture, short x, sh
 {
    XvMCSubpicturePrivate *subpicture_priv;
    XvMCContextPrivate *context_priv;
+   unsigned int tmp_color;
+   float color_f[4];
 
    assert(dpy);
 
    if (!subpicture)
       return XvMCBadSubpicture;
+               
+   /* Convert color to */
+   util_format_read_4f(PIPE_FORMAT_B8G8R8A8_UNORM,
+                    color_f, 1,
+                    &color, 4,
+                    0, 0, 1, 1);
 
    subpicture_priv = subpicture->privData;
    context_priv = subpicture_priv->context->privData;
    /* TODO: Assert clear rect is within bounds? Or clip? */
-   context_priv->vctx->vpipe->surface_fill(context_priv->vctx->vpipe,
+   context_priv->vctx->vpipe->clear_render_target(context_priv->vctx->vpipe,
                                            subpicture_priv->sfc, x, y,
-                                           width, height, color);
+                                                                                  color_f,
+                                           width, height);
 
    return Success;
 }