glx: turn LIBGL_NO_DRAWARRAYS into a boolean
authorEric Engestrom <eric.engestrom@imgtec.com>
Fri, 8 Sep 2017 10:57:26 +0000 (11:57 +0100)
committerEric Engestrom <eric.engestrom@imgtec.com>
Tue, 12 Sep 2017 12:53:12 +0000 (13:53 +0100)
Instead of setting based on set/unset, allow users to use boolean values.
In the docs, use `NO_DRAWARRAYS=true` instead of `NO_DRAWARRAYS=1` as it's
clearer IMO.

Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
docs/envvars.html
src/glx/indirect_glx.c

index 89563e363615768994fe6aee8a8a9877e2afd07a..45e45eb0c9f66a05fd96d8d157ecc697efef3edc 100644 (file)
@@ -31,7 +31,7 @@ sometimes be useful for debugging end-user issues.
 <li>LIBGL_DRIVERS_PATH - colon-separated list of paths to search for DRI drivers
 <li>LIBGL_ALWAYS_INDIRECT - if set to `true`, forces an indirect rendering context/connection.
 <li>LIBGL_ALWAYS_SOFTWARE - if set to `true`, always use software rendering
-<li>LIBGL_NO_DRAWARRAYS - if set do not use DrawArrays GLX protocol (for debugging)
+<li>LIBGL_NO_DRAWARRAYS - if set to `true`, do not use DrawArrays GLX protocol (for debugging)
 <li>LIBGL_SHOW_FPS - print framerate to stdout based on the number of glXSwapBuffers
     calls per second.
 <li>LIBGL_DRI3_DISABLE - disable DRI3 if set to `true`.
index 51dd2cacb212f909aa09783f72e9185514e85f79..4302a8ff28815cf11fb809f3cd2cfd236a970960 100644 (file)
  *   Kristian Høgsberg (krh@bitplanet.net)
  */
 
+#include <stdbool.h>
+
 #include "glapi.h"
 #include "glxclient.h"
 
+#include "util/debug.h"
+
 #ifndef GLX_USE_APPLEGL
 
 extern struct _glapi_table *__glXNewIndirectAPI(void);
@@ -371,7 +375,7 @@ indirect_create_context(struct glx_screen *psc,
       return NULL;
    }
    gc->client_state_private = state;
-   state->NoDrawArraysProtocol = (getenv("LIBGL_NO_DRAWARRAYS") != NULL);
+   state->NoDrawArraysProtocol = env_var_as_boolean("LIBGL_NO_DRAWARRAYS", false);
 
    /*
     ** Create a temporary buffer to hold GLX rendering commands.  The size