* Initial plan * Fix GIF emoji flickering by merging lock scopes in SetEmotion() Remove the separate first lock scope that hid emoji_image_ before destroying gif_controller_ (added by PR #1848). Instead, move the gif_controller_ cleanup into each lock scope where new content is set, so destruction and creation happen atomically. This prevents both the original race condition crash AND the visible flickering. Co-authored-by: 78 <4488133+78@users.noreply.github.com> Agent-Logs-Url: https://github.com/78/xiaozhi-esp32/sessions/2dd0ff3a-4556-47a6-8d40-a30e18c01923 --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: 78 <4488133+78@users.noreply.github.com>