summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2024-07-01 21:43:53 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2024-07-01 21:43:53 +0000
commitecf9c1dbd09ff2145da436398258ea3ff51fb8a2 (patch)
tree30f5c927a1461f760a355e9215a6f50123e803c6
parentf4209908ad9952bb6c2735e4f0df4308c1f95b75 (diff)
parent5ac4647aa97d7289308f78a3c3506fa7e4ca6b7a (diff)
Merge "Fix race condition in extension string creation" into main am: 5959d52278 am: 5ac4647aa9
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/3147277 Change-Id: I93c80817e841f72e63b6c64fdad01eaba85cce4b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--opengl/libs/EGL/egl_display.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/opengl/libs/EGL/egl_display.cpp b/opengl/libs/EGL/egl_display.cpp
index 5b5afd33c6..b1a287fcec 100644
--- a/opengl/libs/EGL/egl_display.cpp
+++ b/opengl/libs/EGL/egl_display.cpp
@@ -383,6 +383,14 @@ EGLBoolean egl_display_t::initialize(EGLint* major, EGLint* minor) {
// before using cnx->major & cnx->minor
if (major != nullptr) *major = cnx->major;
if (minor != nullptr) *minor = cnx->minor;
+ auto mergeExtensionStrings = [](const std::vector<std::string>& strings) {
+ std::ostringstream combinedStringStream;
+ std::copy(strings.begin(), strings.end(),
+ std::ostream_iterator<std::string>(combinedStringStream, " "));
+ // gBuiltinExtensionString already has a trailing space so is added here
+ return gBuiltinExtensionString + combinedStringStream.str();
+ };
+ mExtensionString = mergeExtensionStrings(extensionStrings);
}
{ // scope for refLock
@@ -391,14 +399,6 @@ EGLBoolean egl_display_t::initialize(EGLint* major, EGLint* minor) {
refCond.notify_all();
}
- auto mergeExtensionStrings = [](const std::vector<std::string>& strings) {
- std::ostringstream combinedStringStream;
- std::copy(strings.begin(), strings.end(),
- std::ostream_iterator<std::string>(combinedStringStream, " "));
- // gBuiltinExtensionString already has a trailing space so is added here
- return gBuiltinExtensionString + combinedStringStream.str();
- };
- mExtensionString = mergeExtensionStrings(extensionStrings);
return EGL_TRUE;
}