Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 599eb715 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Properly dispose of EGL resources" into main

parents 63e1e998 4f74d39d
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -93,16 +93,16 @@ EglDisplayContext::EglDisplayContext(std::shared_ptr<ANativeWindow> nativeWindow
}

EglDisplayContext::~EglDisplayContext() {
  eglMakeCurrent(mEglDisplay, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
  if (mEglSurface != EGL_NO_SURFACE) {
    eglDestroySurface(mEglDisplay, mEglSurface);
  }
  if (mEglDisplay != EGL_NO_DISPLAY) {
    eglTerminate(mEglDisplay);
  }
  if (mEglContext != EGL_NO_CONTEXT) {
    eglDestroyContext(mEglDisplay, mEglContext);
  }
  eglReleaseThread();
  if (mEglDisplay != EGL_NO_DISPLAY) {
    eglTerminate(mEglDisplay);
  }
}

EGLDisplay EglDisplayContext::getEglDisplay() const {
+9 −0
Original line number Diff line number Diff line
@@ -229,6 +229,15 @@ EglTestPatternProgram::EglTestPatternProgram() {
                        kTextureCoords.size(), kTextureCoords.data());
}

EglTestPatternProgram::~EglTestPatternProgram() {
  if (mPositionHandle != -1) {
    glDisableVertexAttribArray(mPositionHandle);
  }
  if (mTextureCoordHandle != -1) {
    glDisableVertexAttribArray(mTextureCoordHandle);
  }
}

bool EglTestPatternProgram::draw(const std::chrono::nanoseconds timestamp) {
  // Load compiled shader.
  glUseProgram(mProgram);
+1 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ class EglProgram {
class EglTestPatternProgram : public EglProgram {
 public:
  EglTestPatternProgram();
  virtual ~EglTestPatternProgram();

  bool draw(std::chrono::nanoseconds timestamp);