[Mesa-dev] [Bug 101464] PrimitiveRestartNV inside a render list causes a crash

2017-07-07 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=101464

Brian Paul  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Brian Paul  ---
I've committed a patch based on your suggestion (commit
f5c8bb1e00f358e05ed21f8ed69c9fc3803bf95f) plus an patch for another failure
case (commit 9ac55e8219e1f6abeab3c779c8fe710c2bc25f2b).
Closing this bug.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [Bug 101464] PrimitiveRestartNV inside a render list causes a crash

2017-06-21 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=101464

--- Comment #1 from Olivier Lauffenburger  ---
I have replaced the content of save_PrimitiveRestartNV() by the following code
to make it work:

static void GLAPIENTRY
_save_PrimitiveRestartNV(void)
{
   GLenum curPrim;
   GET_CURRENT_CONTEXT(ctx);

   /* get current primitive mode */
   struct vbo_save_context *save = _context(ctx)->save;
   if (save->prim_count == 0) return;

   const GLuint i = save->prim_count - 1;

   curPrim = save->prim[i].mode;

   /* restart primitive */
   CALL_End(GET_DISPATCH(), ());
   vbo_save_NotifyBegin(ctx, (curPrim | VBO_SAVE_PRIM_WEAK
   | VBO_SAVE_PRIM_NO_CURRENT_UPDATE));
}

Contrarily to what is stated, ctx->Driver.CurrentSavePrimitive is not correctly
set before _save_PrimitiveRestartNV() is called, whence this intricate code to
get the current primitive mode...

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [Bug 101464] PrimitiveRestartNV inside a render list causes a crash

2017-06-16 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=101464

Bug ID: 101464
   Summary: PrimitiveRestartNV inside a render list causes a crash
   Product: Mesa
   Version: 17.0
  Hardware: x86-64 (AMD64)
OS: All
Status: NEW
  Severity: major
  Priority: medium
 Component: Mesa core
  Assignee: mesa-dev@lists.freedesktop.org
  Reporter: o.lauffenbur...@topsolid.com
QA Contact: mesa-dev@lists.freedesktop.org

When using glDrawElements with glPrimitiveRestartIndexNV during the compilation
of a render list, there is a crash when Mesa reaches the second restart index
of the array.

The reason is that when PrimitiveRestartNV is called internally the first time,
save_PrimitiveRestartNV() (in \src\mesa\vbo\vbo_save_api.c) is called. It
executes _save_End() and _save_Begin(curPrim), but _save_Begin() is a noop
function that merely raises an OpenGL error "Recursive glBegin".

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev