drm/qxl: Do not leak memory if qxl_release_list_add fails
[firefly-linux-kernel-4.4.55.git] / drivers / gpu / drm / qxl / qxl_ioctl.c
index b110883f8253dc272498abb64b4c408146519930..7354a4cda59d95aa17e6704602ca2aaa49c0e36d 100644 (file)
@@ -122,8 +122,10 @@ static struct qxl_bo *qxlhw_handle_to_bo(struct qxl_device *qdev,
        qobj = gem_to_qxl_bo(gobj);
 
        ret = qxl_release_list_add(release, qobj);
-       if (ret)
+       if (ret) {
+               drm_gem_object_unreference_unlocked(gobj);
                return NULL;
+       }
 
        return qobj;
 }