mesa: add line_width() helper
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Thu, 20 Jul 2017 08:22:24 +0000 (10:22 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 2 Aug 2017 10:54:31 +0000 (12:54 +0200)
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
src/mesa/main/lines.c

index 4df658794d6f3d526f8cf552ba5ab912fc197914..04b3e2ff126cfa15a8d4962e3e55b8fdce409a2c 100644 (file)
  *
  * \sa glLineWidth().
  */
-void GLAPIENTRY
-_mesa_LineWidth( GLfloat width )
+static ALWAYS_INLINE void
+line_width(struct gl_context *ctx, GLfloat width, bool no_error)
 {
-   GET_CURRENT_CONTEXT(ctx);
-
-   if (MESA_VERBOSE & VERBOSE_API)
-      _mesa_debug(ctx, "glLineWidth %f\n", width);
-
    /* If width is unchanged, there can't be an error */
    if (ctx->Line.Width == width)
       return;
 
-   if (width <= 0.0F) {
+   if (!no_error && width <= 0.0F) {
       _mesa_error( ctx, GL_INVALID_VALUE, "glLineWidth" );
       return;
    }
@@ -64,7 +59,7 @@ _mesa_LineWidth( GLfloat width )
     * *NOT* removed in a later spec.  Therefore, we only disallow this in a
     * forward compatible context.
     */
-   if (ctx->API == API_OPENGL_CORE
+   if (!no_error && ctx->API == API_OPENGL_CORE
        && ((ctx->Const.ContextFlags & GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT)
            != 0)
        && width > 1.0F) {
@@ -81,6 +76,18 @@ _mesa_LineWidth( GLfloat width )
 }
 
 
+void GLAPIENTRY
+_mesa_LineWidth(GLfloat width)
+{
+   GET_CURRENT_CONTEXT(ctx);
+
+   if (MESA_VERBOSE & VERBOSE_API)
+      _mesa_debug(ctx, "glLineWidth %f\n", width);
+
+   line_width(ctx, width, false);
+}
+
+
 /**
  * Set the line stipple pattern.
  *