about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2025-05-08 22:20:09 +0200
committerbptato <nincsnevem662@gmail.com>2025-05-08 22:20:09 +0200
commit9bf11d4a8cf24447753a74367d235816d1e66cbd (patch)
treed72e50f70f522010f963abb764ac8480c42a44d0
parent3187e160233cd43cc6f2c984c75f45e74477be4b (diff)
downloadchawan-9bf11d4a8cf24447753a74367d235816d1e66cbd.tar.gz
buffer: remove gpstream & SIGTERM handler
SIGTERM will kill us anyway, and then the control stream gets
automatically closed.  Fin.
-rw-r--r--src/server/buffer.nim7
-rw-r--r--src/server/forkserver.nim7
2 files changed, 1 insertions, 13 deletions
diff --git a/src/server/buffer.nim b/src/server/buffer.nim
index 1c3f9939..76b4bc29 100644
--- a/src/server/buffer.nim
+++ b/src/server/buffer.nim
@@ -877,8 +877,6 @@ proc rewind(buffer: Buffer; data: InputData; offset: int;
   buffer.bytesRead = offset
   return true
 
-var gpstream* {.global.}: SocketStream
-
 # Create an exact clone of the current buffer.
 # This clone will share the loader process with the previous buffer.
 proc clone*(buffer: Buffer; newurl: URL): int {.proxy.} =
@@ -945,7 +943,6 @@ proc clone*(buffer: Buffer; newurl: URL): int {.proxy.} =
     for it in buffer.tasks.mitems:
       it = 0
     buffer.pstream = pstream
-    gpstream = buffer.pstream
     buffer.loader.clientPid = myPid
     # get key for new buffer
     buffer.loader.controlStream.sclose()
@@ -1894,9 +1891,7 @@ proc runBuffer(buffer: Buffer) =
         buffer.maybeReshape()
 
 proc cleanup(buffer: Buffer) =
-  if gpstream != nil:
-    gpstream.sclose()
-    gpstream = nil
+  buffer.pstream.sclose()
   buffer.window.crypto.urandom.sclose()
 
 proc launchBuffer*(config: BufferConfig; url: URL; attrs: WindowAttributes;
diff --git a/src/server/forkserver.nim b/src/server/forkserver.nim
index d54db0f0..cb9602f5 100644
--- a/src/server/forkserver.nim
+++ b/src/server/forkserver.nim
@@ -128,13 +128,6 @@ proc forkBuffer(ctx: var ForkServerContext; r: var PacketReader): int =
       loaderStream = newSocketStream(r.recvFd())
       istream = newSocketStream(r.recvFd())
     let loader = newFileLoader(pid, loaderStream)
-    gpstream = pstream
-    onSignal SIGTERM:
-      discard sig
-      if gpstream != nil:
-        gpstream.sclose()
-        gpstream = nil
-      exitnow(1)
     signal(SIGPIPE, SIG_DFL)
     enterBufferSandbox()
     try: