diff --git a/src/danog/MadelineProto/API.php b/src/danog/MadelineProto/API.php index 558e7f4a..1689a4a3 100644 --- a/src/danog/MadelineProto/API.php +++ b/src/danog/MadelineProto/API.php @@ -127,6 +127,7 @@ class API extends APIFactory \danog\MadelineProto\Logger::log('Detected fork'); $this->API->__wakeup(); } + return $this->API->__construct($value); } diff --git a/src/danog/MadelineProto/APIFactory.php b/src/danog/MadelineProto/APIFactory.php index b44aedf4..e7e4c33d 100644 --- a/src/danog/MadelineProto/APIFactory.php +++ b/src/danog/MadelineProto/APIFactory.php @@ -123,7 +123,7 @@ class APIFactory if (Logger::is_fork()) { \danog\MadelineProto\Logger::log('Detected fork'); $this->API->reset_session(); - foreach ($this->API->datacenter->sockets as $datacenter) { + foreach ($this->API->datacenter->sockets as $datacenter) { $datacenter->close_and_reopen(); } } diff --git a/src/danog/MadelineProto/Logger.php b/src/danog/MadelineProto/Logger.php index 9f437da9..c634e52f 100644 --- a/src/danog/MadelineProto/Logger.php +++ b/src/danog/MadelineProto/Logger.php @@ -68,10 +68,12 @@ class Logger } } - public static function is_fork() { + public static function is_fork() + { if (self::$pid === null) { self::$pid = getmypid(); } + return self::$pid !== getmypid(); }