Some more merge fixes
authorChristian König <deathsimple@vodafone.de>
Sat, 23 Oct 2010 11:54:47 +0000 (13:54 +0200)
committerChristian König <deathsimple@vodafone.de>
Sat, 23 Oct 2010 11:54:47 +0000 (13:54 +0200)
src/gallium/winsys/g3dvl/dri/dri_winsys.c

index 06631840f788a4b624d7f006ab2d2a38405fbfb7..4d10e27c5806d34b1f0cd204f9dbff989214b6ec 100644 (file)
 #include <util/u_memory.h>
 #include <util/u_hash.h>
 #include <util/u_hash_table.h>
-#include <state_tracker/drm_api.h>
+#include <state_tracker/drm_driver.h>
 #include <X11/Xlibint.h>
 
 struct vl_dri_screen
 {
    struct vl_screen base;
-   struct drm_api *api;
    dri_screen_t *dri_screen;
    struct util_hash_table *drawable_table;
    Drawable last_seen_drawable;
@@ -176,7 +175,6 @@ struct vl_screen*
 vl_screen_create(Display *display, int screen)
 {
    struct vl_dri_screen *vl_dri_scrn;
-   struct drm_create_screen_arg arg;
 
    assert(display);
 
@@ -187,15 +185,7 @@ vl_screen_create(Display *display, int screen)
    if (dri2CreateScreen(display, screen, &vl_dri_scrn->dri_screen))
       goto no_dri2screen;
 
-   vl_dri_scrn->api = drm_api_create();
-   if (!vl_dri_scrn->api)
-      goto no_drmapi;
-
-   arg.mode = DRM_CREATE_NORMAL;
-
-   vl_dri_scrn->base.pscreen = vl_dri_scrn->api->create_screen(vl_dri_scrn->api,
-                                                               vl_dri_scrn->dri_screen->fd,
-                                                               &arg);
+   vl_dri_scrn->base.pscreen = driver_descriptor.create_screen(vl_dri_scrn->dri_screen->fd);
 
    if (!vl_dri_scrn->base.pscreen)
       goto no_pscreen;
@@ -212,8 +202,6 @@ vl_screen_create(Display *display, int screen)
 no_hash:
    vl_dri_scrn->base.pscreen->destroy(vl_dri_scrn->base.pscreen);
 no_pscreen:
-   vl_dri_scrn->api->destroy(vl_dri_scrn->api);
-no_drmapi:
    dri2DestroyScreen(vl_dri_scrn->dri_screen);
 no_dri2screen:
    FREE(vl_dri_scrn);
@@ -230,8 +218,6 @@ void vl_screen_destroy(struct vl_screen *vscreen)
    util_hash_table_foreach(vl_dri_scrn->drawable_table, drawable_destroy, vl_dri_scrn);
    util_hash_table_destroy(vl_dri_scrn->drawable_table);
    vl_dri_scrn->base.pscreen->destroy(vl_dri_scrn->base.pscreen);
-   if (vl_dri_scrn->api->destroy)
-      vl_dri_scrn->api->destroy(vl_dri_scrn->api);
    dri2DestroyScreen(vl_dri_scrn->dri_screen);
    FREE(vl_dri_scrn);
 }