[Cairo] Fix memory leaks in GLContextGLX.cpp
authormrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Jun 2012 05:34:37 +0000 (05:34 +0000)
committermrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Jun 2012 05:34:37 +0000 (05:34 +0000)
commit736a063d297b9fe86941fae047aa0ba7f7a8cfde
tree9295c9b7bc4691680365f2cef1fdda8d503aedd9
parente146182b928f39413defc5c371d0c6e49125603e
[Cairo] Fix memory leaks in GLContextGLX.cpp
https://bugs.webkit.org/show_bug.cgi?id=89346

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-18
Reviewed by Martin Robinson.

Fix memory leaks found in GLContextGLX.cpp.

* platform/graphics/glx/GLContextGLX.cpp:
(WebCore::GLContextGLX::cleanupActiveContextsAtExit): Removing element reduces
size of the vector, so the loop termination condition was failing in the last
iteration, when the vector contains more than one element. This patch fixes the
issue by iterating the vector backwards, so the termination condition doesn't
fail until the size() reaches 0.
(WebCore::GLContextGLX::createPbufferContext): Delete GLXPbuffer
returned by glXCreatePbuffer().
(WebCore::GLContextGLX::createPixmapContext): Delete XVisualInfo
returned by glXChooseVisual().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@120673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/glx/GLContextGLX.cpp