@opencraw/studio 0.0.25 → 0.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -5077,7 +5077,9 @@ function acceptWebSocket(request, socket) {
5077
5077
  if (!socket.destroyed) socket.write(frame(text));
5078
5078
  },
5079
5079
  close: () => {
5080
- socket.end();
5080
+ socket.end(() => {
5081
+ socket.destroy();
5082
+ });
5081
5083
  },
5082
5084
  onMessage: handler => {
5083
5085
  messageHandlers.push(handler);
@@ -5184,6 +5186,8 @@ async function startStudioServer(options = {}) {
5184
5186
  async function stop(server, state) {
5185
5187
  await state.activeRun?.stop();
5186
5188
  await settleRecording(state);
5189
+ // An upgraded socket is no longer the HTTP server's: without this, server.close waits for the page to hang up.
5190
+ for (const connection of state.sockets) connection.close();
5187
5191
  server.closeAllConnections();
5188
5192
  await new Promise((resolve, reject) => {
5189
5193
  server.close(error => error === undefined ? resolve() : reject(error));