diff --git a/docs/context.dox b/docs/context.dox index 61292849..08aa1a98 100644 --- a/docs/context.dox +++ b/docs/context.dox @@ -103,6 +103,9 @@ Before you can make OpenGL or OpenGL ES calls, you need to have a current context of the correct type. A context can only be current for a single thread at a time, and a thread can only have a single context current at a time. +When moving a context between threads, you must make it non-current on the old +thread before making it current on the new one. + The context of a window is made current with @ref glfwMakeContextCurrent. @code diff --git a/include/GLFW/glfw3.h b/include/GLFW/glfw3.h index 6923ba68..bd20d9af 100644 --- a/include/GLFW/glfw3.h +++ b/include/GLFW/glfw3.h @@ -4809,10 +4809,13 @@ GLFWAPI uint64_t glfwGetTimerFrequency(void); * thread. * * This function makes the OpenGL or OpenGL ES context of the specified window - * current on the calling thread. A context can only be made current on + * current on the calling thread. A context must only be made current on * a single thread at a time and each thread can have only a single current * context at a time. * + * When moving a context between threads, you must make it non-current on the + * old thread before making it current on the new one. + * * By default, making a context non-current implicitly forces a pipeline flush. * On machines that support `GL_KHR_context_flush_control`, you can control * whether a context performs this flush by setting the