Skip to content

Commit 230de71

Browse files
EmingKMartin Konicek
authored and
Martin Konicek
committed
fix memory leak in Chrome debugging
Summary: `RCTWebSocketExecutor` saves every WebSocket callback when sending message to chrome, but does not clear them in a debug session until the JS bridge is reloaded, and there may be thousands of blocks saved in the callback table. This PR removes them after they are called. Closes #11341 Differential Revision: D4295710 Pulled By: javache fbshipit-source-id: 29a02d1aba320115bbb97aee8981e34b89303c91
1 parent be16907 commit 230de71

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

Libraries/WebSocket/RCTWebSocketExecutor.m

+1
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ - (void)webSocket:(RCTSRWebSocket *)webSocket didReceiveMessage:(id)message
141141
RCTWSMessageCallback callback = _callbacks[messageID];
142142
if (callback) {
143143
callback(error, reply);
144+
[_callbacks removeObjectForKey:messageID];
144145
}
145146
}
146147

0 commit comments

Comments
 (0)