[PATCH] composite: Wrap GetSpans

Keith Packard keithp at keithp.com
Thu Oct 23 22:12:42 PDT 2014


Adam Jackson <ajax at redhat.com> writes:

> I'm not sure this is true?  ProcCopyArea doesn't call SourceValidate.
> fbCopyArea does (by way of miDoCopy), but miCopyArea does not, in fact
> there's no calls to SourceValidate in mibitblt at all.

Yeah, I completely missed that.

> So if you found
> yourself on the span routines and wanted to take a screenshot, GetImage
> would work (because composite wraps it) but CopyArea to a shm pixmap
> would not, the child-to-parent paint wouldn't get triggered and you'd
> get stale contents.
>
> If we fixed mibitblt (and fbGetImage) to call SourceValidate, then I
> think we could remove misprite's GetImage and GetSpans wrappers, since
> SourceValidate would be sufficient.  And I think we could remove
> compGetImage too for the same reason.  I guess we could argue about
> whether to do the SourceValidate at the top in dix or at the bottom in
> mi/fb/etc.

Hrm. Doing it at the DIX level would rather change how software cursors
work; right now, all rendering hits the software cursor pull-down code,
even stuff which doesn't go directly through the DIX level.

> Obviously this wouldn't address the other direction of rendering with
> IncludeInferiors to a redirected child, but it'd still be bugfix by
> deletion.

At this point, it seems easiest to just take your GetSpans patch as a
pure bugfix and consider whether to use SourceValidate in the future,
and whether to push that up to DIX or leave it down at the bottom of the
rendering stack...

-- 
keith.packard at intel.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 810 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20141023/c1b2aeed/attachment.sig>


More information about the xorg-devel mailing list