On 05/23/2013 10:15 PM, Pohjolainen, Topi wrote:
On Thu, May 23, 2013 at 09:39:30PM -0700, Chad Versace wrote:
When touching the src/egl/drivers/dri2 directory, use a commit subject
that looks like "egl/dri2: STUFF", not "egl: dri2: STUFF".

[snip]

+/**
+ * The spec says:
+ *
+ * "If eglCreateImageKHR is successful for a EGL_LINUX_DMA_BUF_EXT target,
+ *  the EGL takes ownership of the file descriptor and is responsible for
+ *  closing it, which it may do at any time while the EGLDisplay is
+ *  initialized."
+ */
+static void
+dri2_take_dma_buf_ownership(const int *fds, unsigned num_fds)
+{
+   int already_closed[num_fds];
+   unsigned num_closed = 0;
+   unsigned i, j;
+
+   for (i = 0; i < num_fds; ++i) {
+      /**
+       * The same file descriptor can be referenced multiple times in case more
+       * than one plane is found in the same buffer, just with a different
+       * offset.
+       */
+      for (j = 0; j < num_closed; ++j) {
+         if (already_closed[j] == fds[i])

The condition above has undefined behavior, ...

There is the explicit counter 'num_closed' telling how many valid elements there
are in 'already_closed'.

My mistake.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to