summaryrefslogtreecommitdiff
path: root/libs/hwui/renderthread/RenderThread.cpp
diff options
context:
space:
mode:
authorScott Lobdell <slobdell@google.com>2019-02-19 10:33:50 -0800
committerScott Lobdell <slobdell@google.com>2019-02-19 11:36:09 -0800
commit81b587a542e8381268a9ba8e7461712ef23cd11f (patch)
treebace051dc4f3efad7dcd091ea0481167815bfaa7 /libs/hwui/renderthread/RenderThread.cpp
parentbf4a1865530dd9a1e4b203d4e9d67fce0958c3fa (diff)
parent13327cc461d8f54550866bc404a99205f95ab92f (diff)
Merge QP1A.190212.003
Conflicts: core/java/android/view/SurfaceControl.java media/java/android/media/MediaCodecInfo.java packages/SettingsLib/res/values/strings.xml services/core/java/com/android/server/am/ActiveServices.java services/core/java/com/android/server/am/OomAdjuster.java services/core/java/com/android/server/audio/AudioDeviceInventory.java services/core/java/com/android/server/display/LocalDisplayAdapter.java services/core/java/com/android/server/wm/ActivityDisplay.java services/core/java/com/android/server/wm/DisplayPolicy.java Change-Id: Idc7582978996d2f7c44f599f221e8d7cc9eedf43
Diffstat (limited to 'libs/hwui/renderthread/RenderThread.cpp')
-rw-r--r--libs/hwui/renderthread/RenderThread.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp
index 3b37c83a6acc..3904ed20fd77 100644
--- a/libs/hwui/renderthread/RenderThread.cpp
+++ b/libs/hwui/renderthread/RenderThread.cpp
@@ -56,7 +56,7 @@ static const nsecs_t DISPATCH_FRAME_CALLBACKS_DELAY = milliseconds_to_nanosecond
static bool gHasRenderThreadInstance = false;
-static void (*gOnStartHook)() = nullptr;
+static JVMAttachHook gOnStartHook = nullptr;
class DisplayEventReceiverWrapper : public VsyncSource {
public:
@@ -111,11 +111,15 @@ bool RenderThread::hasInstance() {
return gHasRenderThreadInstance;
}
-void RenderThread::setOnStartHook(void (*onStartHook)()) {
+void RenderThread::setOnStartHook(JVMAttachHook onStartHook) {
LOG_ALWAYS_FATAL_IF(hasInstance(), "can't set an onStartHook after we've started...");
gOnStartHook = onStartHook;
}
+JVMAttachHook RenderThread::getOnStartHook() {
+ return gOnStartHook;
+}
+
RenderThread& RenderThread::getInstance() {
// This is a pointer because otherwise __cxa_finalize
// will try to delete it like a Good Citizen but that causes us to crash
@@ -325,7 +329,7 @@ void RenderThread::requestVsync() {
bool RenderThread::threadLoop() {
setpriority(PRIO_PROCESS, 0, PRIORITY_DISPLAY);
if (gOnStartHook) {
- gOnStartHook();
+ gOnStartHook("RenderThread");
}
initThreadLocals();