Fix klockwork possible memleak report:

If we get an error trying to "make current" an allocated surface, then
we should free that allocated surface.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
Chris Michael 2013-06-28 14:23:57 +01:00
parent 2a67e78bde
commit f9348a5015
1 changed files with 3 additions and 3 deletions

View File

@ -1412,7 +1412,7 @@ evgl_engine_shutdown(void *eng_data)
void * void *
evgl_surface_create(void *eng_data, Evas_GL_Config *cfg, int w, int h) evgl_surface_create(void *eng_data, Evas_GL_Config *cfg, int w, int h)
{ {
EVGL_Surface *sfc = NULL; EVGL_Surface *sfc = NULL;
char *s = NULL; char *s = NULL;
int direct_override = 0; int direct_override = 0;
@ -1469,7 +1469,7 @@ evgl_surface_create(void *eng_data, Evas_GL_Config *cfg, int w, int h)
if (!_internal_resource_make_current(eng_data, NULL)) if (!_internal_resource_make_current(eng_data, NULL))
{ {
ERR("Error doing an internal resource make current"); ERR("Error doing an internal resource make current");
return 0; goto error;
} }
// Create internal buffers // Create internal buffers
@ -1492,7 +1492,7 @@ evgl_surface_create(void *eng_data, Evas_GL_Config *cfg, int w, int h)
if (!evgl_engine->funcs->make_current(eng_data, NULL, NULL, 0)) if (!evgl_engine->funcs->make_current(eng_data, NULL, NULL, 0))
{ {
ERR("Error doing make_current(NULL, NULL)."); ERR("Error doing make_current(NULL, NULL).");
return 0; goto error;
} }
// Keep track of all the created surfaces // Keep track of all the created surfaces