[PATCH] dri2: Set vdpau driver name if ddx does not provide any driver name

Alan Coopersmith alan.coopersmith at oracle.com
Sat Jan 3 10:36:05 PST 2015


On 01/ 3/15 01:02 AM, Adel Gadllah wrote:
> Currently when the ddx does not set any driver name we set DRI2 driver but
> not the VDPAU driver name. The result is that VDPAU drivers will not get found
> by libvdpau when the modesetting driver is being used.
>
> Just assume that the VDPAU driver matches the DRI2 driver name, this is true
> for nouveau, r300, r600 and radeonsi i.e all VDPAU drivers currently supported
> by mesa.
>
> Signed-off-by: Adel Gadllah <adel.gadllah at gmail.com>
> ---
>   hw/xfree86/dri2/dri2.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
> index c8fcd62..82e1f33 100644
> --- a/hw/xfree86/dri2/dri2.c
> +++ b/hw/xfree86/dri2/dri2.c
> @@ -1581,7 +1581,8 @@ DRI2ScreenInit(ScreenPtr pScreen, DRI2InfoPtr info)
>           if (info->driverName) {
>               ds->driverNames[0] = info->driverName;
>           } else {
> -            ds->driverNames[0] = dri2_probe_driver_name(pScreen, info);
> +            ds->numDrivers = 2;
> +            ds->driverNames[0] = ds->driverNames[1] = dri2_probe_driver_name(pScreen, info);

Isn't that going to be a buffer overflow since memory was only allocated
for one pointer, not two?

-- 
	-Alan Coopersmith-              alan.coopersmith at oracle.com
	 Oracle Solaris Engineering - http://blogs.oracle.com/alanc


More information about the xorg-devel mailing list