bootanim: audioplay: do not start audio thread if it is not allowed
If playSoundsAllowed() returns false, then no need to start new audio
thread.
Bug: 232955344
Test:
Manual - applied this wear-dev change to a local main
and verified in an emulator that when launching
bootanimation (as root), init() early exits with no
negative consequences when BootAnimationUtil.cpp's
playSoundsAllowed() returns false. Also tested when
playSoundsAllowed() returns true, init() continues
(but exits when partWithAudio is null checked).
Change-Id: Ia3ff397ab004b09e60acca1b4ad23c5e76d698cb
(cherry picked from commit 61b667b5bce33ee857a19688a23eef79bdf66a99)
(cherry picked from commit 226331c3b20571fd3dc38bb5da7e0455c4a34f13)
diff --git a/cmds/bootanimation/audioplay.cpp b/cmds/bootanimation/audioplay.cpp
index c5e16c6..da85a1c 100644
--- a/cmds/bootanimation/audioplay.cpp
+++ b/cmds/bootanimation/audioplay.cpp
@@ -334,6 +334,11 @@
public:
void init(const Vector<Animation::Part>& parts) override {
const Animation::Part* partWithAudio = nullptr;
+
+ if (!playSoundsAllowed()) {
+ return;
+ }
+
for (const Animation::Part& part : parts) {
if (part.audioData != nullptr) {
partWithAudio = ∂