From 416fa04d3b97e05bf1b698bc361e18d3b4687219 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 29 Nov 2021 22:46:29 +0530 Subject: [PATCH] Make doubly sure the ready message is sent only once --- src/pyj/iframe_comm.pyj | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/pyj/iframe_comm.pyj b/src/pyj/iframe_comm.pyj index 6f29279b0c..492b91be52 100644 --- a/src/pyj/iframe_comm.pyj +++ b/src/pyj/iframe_comm.pyj @@ -186,11 +186,12 @@ class IframeClient: self.handlers.initialize = self.initialize self.ready_sent = False window.addEventListener('message', self.handle_message, False) - window.addEventListener('load', def(): - if not self.ready_sent: - self.send_message('ready', {}) - self.ready_sent = True - ) + window.addEventListener('load', self.send_ready, {'once': True}) + + def send_ready(self): + if not self.ready_sent: + self.send_message('ready', {}) + self.ready_sent = True def initialize(self, data): nonlocal print