mirror of
https://github.com/gnif/LookingGlass.git
synced 2024-11-10 08:38:20 +00:00
[client] fixed missed usage of new locking semantics
This commit is contained in:
parent
2f6b7e08f8
commit
5501d22a2d
@ -257,7 +257,7 @@ bool opengl_on_frame_event(void * opaque, const LG_RendererFormat format, const
|
|||||||
LG_LOCK(this->formatLock);
|
LG_LOCK(this->formatLock);
|
||||||
if (this->reconfigure)
|
if (this->reconfigure)
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -265,13 +265,13 @@ bool opengl_on_frame_event(void * opaque, const LG_RendererFormat format, const
|
|||||||
{
|
{
|
||||||
memcpy(&this->format, &format, sizeof(LG_RendererFormat));
|
memcpy(&this->format, &format, sizeof(LG_RendererFormat));
|
||||||
this->reconfigure = true;
|
this->reconfigure = true;
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
|
|
||||||
// lock, perform the update, then unlock
|
// lock, perform the update, then unlock
|
||||||
while(__sync_lock_test_and_set(&this->syncLock, 1));
|
LG_LOCK(this->syncLock);
|
||||||
memcpySSE(this->texPixels[this->wTexIndex], data, this->texSize);
|
memcpySSE(this->texPixels[this->wTexIndex], data, this->texSize);
|
||||||
this->frameUpdate = true;
|
this->frameUpdate = true;
|
||||||
LG_UNLOCK(this->syncLock);
|
LG_UNLOCK(this->syncLock);
|
||||||
@ -437,7 +437,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
LG_LOCK(this->formatLock);
|
LG_LOCK(this->formatLock);
|
||||||
if (!this->reconfigure)
|
if (!this->reconfigure)
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return this->configured;
|
return this->configured;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -448,7 +448,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
if (!this->glContext)
|
if (!this->glContext)
|
||||||
{
|
{
|
||||||
DEBUG_ERROR("Failed to create the OpenGL context");
|
DEBUG_ERROR("Failed to create the OpenGL context");
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -468,7 +468,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
if (!gluCheckExtension((const GLubyte *)"GL_ARB_buffer_storage", extensions))
|
if (!gluCheckExtension((const GLubyte *)"GL_ARB_buffer_storage", extensions))
|
||||||
{
|
{
|
||||||
DEBUG_INFO("The GPU doesn't support GL_ARB_buffer_storage");
|
DEBUG_INFO("The GPU doesn't support GL_ARB_buffer_storage");
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -487,7 +487,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
|
|
||||||
default:
|
default:
|
||||||
DEBUG_INFO("%d bpp not supported", this->format.bpp);
|
DEBUG_INFO("%d bpp not supported", this->format.bpp);
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -503,7 +503,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
glGenBuffers(1, this->vboID);
|
glGenBuffers(1, this->vboID);
|
||||||
if (check_gl_error("glGenBuffers"))
|
if (check_gl_error("glGenBuffers"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
this->hasBuffers = true;
|
this->hasBuffers = true;
|
||||||
@ -511,7 +511,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
glBindBuffer(GL_PIXEL_UNPACK_BUFFER, this->vboID[0]);
|
glBindBuffer(GL_PIXEL_UNPACK_BUFFER, this->vboID[0]);
|
||||||
if (check_gl_error("glBindBuffer"))
|
if (check_gl_error("glBindBuffer"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -524,7 +524,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
);
|
);
|
||||||
if (check_gl_error("glBufferStorage"))
|
if (check_gl_error("glBufferStorage"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -539,7 +539,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
|
|
||||||
if (check_gl_error("glMapBufferRange"))
|
if (check_gl_error("glMapBufferRange"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -550,7 +550,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
glGenTextures(TEXTURE_COUNT, this->textures);
|
glGenTextures(TEXTURE_COUNT, this->textures);
|
||||||
if (check_gl_error("glGenTextures"))
|
if (check_gl_error("glGenTextures"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
this->hasTextures = true;
|
this->hasTextures = true;
|
||||||
@ -559,7 +559,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
glBindTexture(GL_TEXTURE_2D, this->textures[FRAME_TEXTURE]);
|
glBindTexture(GL_TEXTURE_2D, this->textures[FRAME_TEXTURE]);
|
||||||
if (check_gl_error("glBindTexture"))
|
if (check_gl_error("glBindTexture"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -576,7 +576,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
);
|
);
|
||||||
if (check_gl_error("glTexImage2D"))
|
if (check_gl_error("glTexImage2D"))
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -620,7 +620,7 @@ static bool configure(struct Inst * this, SDL_Window *window)
|
|||||||
this->configured = true;
|
this->configured = true;
|
||||||
this->reconfigure = false;
|
this->reconfigure = false;
|
||||||
|
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -652,11 +652,11 @@ static void deconfigure(struct Inst * this)
|
|||||||
|
|
||||||
static void update_mouse_shape(struct Inst * this, bool * newShape)
|
static void update_mouse_shape(struct Inst * this, bool * newShape)
|
||||||
{
|
{
|
||||||
while(__sync_lock_test_and_set(&this->mouseLock, 1));
|
LG_LOCK(this->mouseLock);
|
||||||
*newShape = this->newShape;
|
*newShape = this->newShape;
|
||||||
if (!this->newShape)
|
if (!this->newShape)
|
||||||
{
|
{
|
||||||
__sync_lock_release(&this->mouseLock);
|
LG_UNLOCK(this->mouseLock);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -782,12 +782,12 @@ static void update_mouse_shape(struct Inst * this, bool * newShape)
|
|||||||
}
|
}
|
||||||
|
|
||||||
this->mouseUpdate = true;
|
this->mouseUpdate = true;
|
||||||
__sync_lock_release(&this->mouseLock);
|
LG_UNLOCK(this->mouseLock);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool draw_frame(struct Inst * this, bool * frameUpdate)
|
static bool draw_frame(struct Inst * this, bool * frameUpdate)
|
||||||
{
|
{
|
||||||
while(__sync_lock_test_and_set(&this->syncLock, 1));
|
LG_LOCK(this->syncLock);
|
||||||
*frameUpdate = this->frameUpdate;
|
*frameUpdate = this->frameUpdate;
|
||||||
if (!this->frameUpdate)
|
if (!this->frameUpdate)
|
||||||
{
|
{
|
||||||
@ -813,7 +813,7 @@ static bool draw_frame(struct Inst * this, bool * frameUpdate)
|
|||||||
if (!(textSurface = TTF_RenderText_Blended(this->params.font, str, color)))
|
if (!(textSurface = TTF_RenderText_Blended(this->params.font, str, color)))
|
||||||
{
|
{
|
||||||
DEBUG_ERROR("Failed to render text");
|
DEBUG_ERROR("Failed to render text");
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -925,7 +925,7 @@ static bool draw_frame(struct Inst * this, bool * frameUpdate)
|
|||||||
}
|
}
|
||||||
|
|
||||||
glBindTexture(GL_TEXTURE_2D, 0);
|
glBindTexture(GL_TEXTURE_2D, 0);
|
||||||
__sync_lock_release(&this->formatLock);
|
LG_UNLOCK(this->formatLock);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user