about summary refs log tree commit homepage
path: root/lib
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2019-06-03 09:00:28 +0000
committerEric Wong <e@80x24.org>2019-06-03 09:03:22 +0000
commit43249cc8458235ed64a8212e1126936454a525bc (patch)
tree9cbf927815d5659a4524c65ffeaaf3a260e9ecb7 /lib
parentb36456a92e15436bef97247b6ef7d8e5c72ebbe4 (diff)
downloadpublic-inbox-43249cc8458235ed64a8212e1126936454a525bc.tar.gz
We don't need and won't be needing per-socket PostLoopCallbacks.
Diffstat (limited to 'lib')
-rw-r--r--lib/PublicInbox/DS.pm25
1 files changed, 2 insertions, 23 deletions
diff --git a/lib/PublicInbox/DS.pm b/lib/PublicInbox/DS.pm
index 6b04e768..03612ce8 100644
--- a/lib/PublicInbox/DS.pm
+++ b/lib/PublicInbox/DS.pm
@@ -58,7 +58,6 @@ our (
      @ToClose,                   # sockets to close when event loop is done
 
      $PostLoopCallback,          # subref to call at the end of each loop, if defined (global)
-     %PLCMap,                    # fd (num) -> PostLoopCallback (per-object)
 
      $LoopTimeout,               # timeout of event loop in milliseconds
      $DoneInit,                  # if we've done the one-time module init yet
@@ -85,7 +84,6 @@ sub Reset {
     @Timers = ();
 
     $PostLoopCallback = undef;
-    %PLCMap = ();
     $DoneInit = 0;
 
     # NOTE kqueue is close-on-fork, and we don't account for it, yet
@@ -389,18 +387,8 @@ The callback function will be passed two parameters: \%DescriptorMap
 sub SetPostLoopCallback {
     my ($class, $ref) = @_;
 
-    if (ref $class) {
-        # per-object callback
-        my PublicInbox::DS $self = $class;
-        if (defined $ref && ref $ref eq 'CODE') {
-            $PLCMap{$self->{fd}} = $ref;
-        } else {
-            delete $PLCMap{$self->{fd}};
-        }
-    } else {
-        # global callback
-        $PostLoopCallback = (defined $ref && ref $ref eq 'CODE') ? $ref : undef;
-    }
+    # global callback
+    $PostLoopCallback = (defined $ref && ref $ref eq 'CODE') ? $ref : undef;
 }
 
 # Internal function: run the post-event callback, send read events
@@ -426,11 +414,6 @@ sub PostEventLoop {
     # or global) cancels it
     my $keep_running = 1;
 
-    # per-object post-loop-callbacks
-    for my $plc (values %PLCMap) {
-        $keep_running &&= $plc->(\%DescriptorMap);
-    }
-
     # now we're at the very end, call callback if defined
     if (defined $PostLoopCallback) {
         $keep_running &&= $PostLoopCallback->(\%DescriptorMap);
@@ -580,10 +563,6 @@ sub _cleanup {
         }
     }
 
-    # now delete from mappings.  this fd no longer belongs to us, so we don't want
-    # to get alerts for it if it becomes writable/readable/etc.
-    delete $PLCMap{$self->{fd}};
-
     # we explicitly don't delete from DescriptorMap here until we
     # actually close the socket, as we might be in the middle of
     # processing an epoll_wait/etc that returned hundreds of fds, one