<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEEDINFO "
   title="NEEDINFO --- - Buffer Overflow in xf86-video-intel"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=80157#c25">Comment # 25</a>
              on <a class="bz_bug_link 
          bz_status_NEEDINFO "
   title="NEEDINFO --- - Buffer Overflow in xf86-video-intel"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=80157">bug 80157</a>
              from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
        <pre>To test the theory that we are being given garbage, can you please try running
with:

diff --git a/src/sna/sna_dri2.c b/src/sna/sna_dri2.c
index cfe65f4..a8d3848 100644
--- a/src/sna/sna_dri2.c
+++ b/src/sna/sna_dri2.c
@@ -2631,6 +2631,13 @@ sna_dri2_schedule_swap(ClientPtr client, DrawablePtr
draw, DRI2BufferPtr front,
        struct sna_dri2_event *info = NULL;
        CARD64 current_msc;

+       if (client->osPrivate == NULL) {
+               ErrorF("%s: called with dead client\n", __func__);
+               return BadMatch;
+       }
+       IgnoreClient(client);
+       AttendClient(client);
+
        DBG(("%s: draw=%lu %dx%d, pixmap=%ld %dx%d, back=%u (refs=%d/%d,
flush=%d) , front=%u (refs=%d/%d, flush=%d)\n",
             __FUNCTION__,
             (long)draw->id, draw->width, draw->height,</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>