diff --git a/core/jni/android_view_SurfaceControl.cpp b/core/jni/android_view_SurfaceControl.cpp index b301703158f66..4d8ca1b246e7e 100644 --- a/core/jni/android_view_SurfaceControl.cpp +++ b/core/jni/android_view_SurfaceControl.cpp @@ -1950,8 +1950,10 @@ static void nativeSetFrameTimelineVsync(JNIEnv* env, jclass clazz, jlong transac jlong frameTimelineVsyncId) { auto transaction = reinterpret_cast(transactionObj); - transaction->setFrameTimelineInfo( - {frameTimelineVsyncId, android::os::IInputConstants::INVALID_INPUT_EVENT_ID}); + FrameTimelineInfo ftInfo; + ftInfo.vsyncId = frameTimelineVsyncId; + ftInfo.inputEventId = android::os::IInputConstants::INVALID_INPUT_EVENT_ID; + transaction->setFrameTimelineInfo(ftInfo); } static void nativeAddTransactionCommittedListener(JNIEnv* env, jclass clazz, jlong transactionObj, diff --git a/native/android/surface_control.cpp b/native/android/surface_control.cpp index 1ebdc273931b8..98edcc30f985e 100644 --- a/native/android/surface_control.cpp +++ b/native/android/surface_control.cpp @@ -669,6 +669,8 @@ void ASurfaceTransaction_setFrameTimeline(ASurfaceTransaction* aSurfaceTransacti AVsyncId vsyncId) { CHECK_NOT_NULL(aSurfaceTransaction); const auto startTime = AChoreographer_getStartTimeNanosForVsyncId(vsyncId); - ASurfaceTransaction_to_Transaction(aSurfaceTransaction) - ->setFrameTimelineInfo({.vsyncId = vsyncId, .startTimeNanos = startTime}); + FrameTimelineInfo ftInfo; + ftInfo.vsyncId = vsyncId; + ftInfo.startTimeNanos = startTime; + ASurfaceTransaction_to_Transaction(aSurfaceTransaction)->setFrameTimelineInfo(ftInfo); }