• Show log

    Commit

  • Hash : c95ffadf
    Author : Igor Nazarov
    Date : 2023-07-24T13:00:32

    Perform Display terminate(InternalCleanup) from makeCurrent()
    
    Current state:
    - Call to `eglTerminate()` is canceled if there are Contexts current.
    - All not current Contexts are invalidated in `eglTerminate()` call.
    - Full Display termination will happen only when last Context is
      actually destroyed in `eglDestroyContext()` or last active thread
      terminates (Android only).
    
    Problem:
    - Context is not marked invalid after it is unmade from current when
      `eglTerminate()` was already called.
    - If `eglDestroyContext()` was called while context was current, it
      will be destroyed when unmade from current - in this case actual
      Display termination will NOT happen.
    
    After this change:
    - Context immediately invalidated after it is unmade from current when
      `eglTerminate()` was already called.
    - Full Display termination will happen after the last Context is unmade
      from current (all Contexts are invalid).
    
    Bug: angleproject:6798
    Test: angle_end2end_tests --gtest_filter=EGLDisplayTest.ContextLeakAfterTerminate*
    Change-Id: Idcce94b041649db58d3d879858fba99109347baf
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4708328
    Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
    Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
    Reviewed-by: Geoff Lang <geofflang@chromium.org>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags