Line 2720 contains: if (dfb_core_is_master( dfb_fbdev->core )) { fbdev_ioctl_call_handler( 1, request, arg, NULL, 0, &ret ); return ret; } I think this should instead be: if (dfb_core_is_master( dfb_fbdev->core )) { fbdev_ioctl_call_handler( 1, request, arg, NULL, 0, &ret ); return ret ? -1 : 0; } This bug results in a Framebuffer driver error code not being detected as an error by callers of FBDEV_IOCTL. For example, without the bug fix, the "if" statement below (from fbdev.c line 1875) is not entered:
if (FBDEV_IOCTL( FBIOPUT_VSCREENINFO, &var ) < 0) { int erno = errno; dfb_gfxcard_unlock(); D_DEBUG_AT( FBDev_Mode, " => FAILED!\n" ); return errno2result( erno ); } By the way, how do I access the directfb bug tracking system? The link to it on http://www.directfb.org/ go nowhere.
_______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev