summaryrefslogtreecommitdiff
path: root/modules/directfb/directfb.c
diff options
context:
space:
mode:
Diffstat (limited to 'modules/directfb/directfb.c')
-rw-r--r--modules/directfb/directfb.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/modules/directfb/directfb.c b/modules/directfb/directfb.c
index ad98e2b..4d3b83f 100644
--- a/modules/directfb/directfb.c
+++ b/modules/directfb/directfb.c
@@ -11,7 +11,7 @@
struct vidisp_st {
- struct vidisp *vd; /**< Inheritance (1st) */
+ const struct vidisp *vd; /**< Inheritance (1st) */
struct vidsz size; /**< Current size */
IDirectFBWindow *window; /**< DirectFB Window */
IDirectFBSurface *surface; /**< Surface for pixels */
@@ -33,12 +33,10 @@ static void destructor(void *arg)
st->window->Release(st->window);
if (st->layer)
st->layer->Release(st->layer);
-
- mem_deref(st->vd);
}
-static int alloc(struct vidisp_st **stp, struct vidisp *vd,
+static int alloc(struct vidisp_st **stp, const struct vidisp *vd,
struct vidisp_prm *prm, const char *dev,
vidisp_resize_h *resizeh, void *arg)
{
@@ -55,7 +53,7 @@ static int alloc(struct vidisp_st **stp, struct vidisp *vd,
if (!st)
return ENOMEM;
- st->vd = mem_ref(vd);
+ st->vd = vd;
dfb->GetDisplayLayer(dfb, DLID_PRIMARY, &st->layer);