On Sat, May 1, 2010 at 12:30 AM, Benjamin Otte <span dir="ltr">&lt;<a href="mailto:otte@redhat.com">otte@redhat.com</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">On Fri, 2010-04-30 at 12:28 +0100, Chris Wilson wrote:<br>
&gt; Currently self-copy behaviour is underspecified. I think the consensus is<br>
&gt; that self-modification is undesired...<br>
&gt;<br>
</div>Last I brought this up the consensus was a lot stronger than just<br>
&quot;undesired&quot;.<br>
I&#39;d vote to make it an explicit error on the gstate if you set a<br>
source/mask that was identical to the target.<br>
If you document that clearly for set_source() and mask() and enable<br>
using push_group() as a workaround, the problem would almost be solved.<br>
<br>
I also suppose that a lot of people would expect self-copies to do<br>
special magic (like XCopyArea), and I think trying to provide that is<br>
both a lot of work and often impossible anyway.<br></blockquote><div><br>Why would entering an error state be better than just introducing a temporary surface internally?<br clear="all"></div></div><br>Rob<br>-- <br>&quot;He was pierced for our transgressions, he was crushed for our iniquities; the punishment that brought us peace was upon him, and by his wounds we are healed. We all, like sheep, have gone astray, each of us has turned to his own way; and the LORD has laid on him the iniquity of us all.&quot; [Isaiah 53:5-6]<br>