summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author John Reck <jreck@google.com> 2016-08-02 09:38:26 -0700
committer John Reck <jreck@google.com> 2016-08-02 09:38:26 -0700
commit65ddb154c75126bbef8bf03494e6fd0d98ee0127 (patch)
tree584954a6e87f852a81261fed6ecae594fab8c919
parentc1b853ebfba7b8ff67919bb43dd73c80074d1a3b (diff)
Fix FrameMetricsObserver crash
Bug: 30587465 Someday maybe the technology will exist to allow sharing a simple constant between Java and C++, but today is not that day. Change-Id: I17694746cb8712058133cd5ea10c47b9909f740b
-rw-r--r--core/java/android/view/FrameMetrics.java2
-rw-r--r--libs/hwui/FrameInfo.cpp3
-rw-r--r--libs/hwui/FrameInfo.h1
3 files changed, 5 insertions, 1 deletions
diff --git a/core/java/android/view/FrameMetrics.java b/core/java/android/view/FrameMetrics.java
index 5c4450a4ed18..2b938d0df7eb 100644
--- a/core/java/android/view/FrameMetrics.java
+++ b/core/java/android/view/FrameMetrics.java
@@ -198,7 +198,7 @@ public final class FrameMetrics {
int SWAP_BUFFERS = 12;
int FRAME_COMPLETED = 13;
- int FRAME_STATS_COUNT = 14; // must always be last
+ int FRAME_STATS_COUNT = 16; // must always be last
}
/*
diff --git a/libs/hwui/FrameInfo.cpp b/libs/hwui/FrameInfo.cpp
index 09b3945c7f55..826f0bba294c 100644
--- a/libs/hwui/FrameInfo.cpp
+++ b/libs/hwui/FrameInfo.cpp
@@ -43,6 +43,9 @@ static_assert((sizeof(FrameInfoNames)/sizeof(FrameInfoNames[0]))
== static_cast<int>(FrameInfoIndex::NumIndexes),
"size mismatch: FrameInfoNames doesn't match the enum!");
+static_assert(static_cast<int>(FrameInfoIndex::NumIndexes) == 16,
+ "Must update value in FrameMetrics.java#FRAME_STATS_COUNT (and here)");
+
void FrameInfo::importUiThreadInfo(int64_t* info) {
memcpy(mFrameInfo, info, UI_THREAD_FRAME_INFO_SIZE * sizeof(int64_t));
}
diff --git a/libs/hwui/FrameInfo.h b/libs/hwui/FrameInfo.h
index 1fe54591cf7e..45b57de0b504 100644
--- a/libs/hwui/FrameInfo.h
+++ b/libs/hwui/FrameInfo.h
@@ -52,6 +52,7 @@ enum class FrameInfoIndex {
QueueBufferDuration,
// Must be the last value!
+ // Also must be kept in sync with FrameMetrics.java#FRAME_STATS_COUNT
NumIndexes
};