1
0
mirror of https://github.com/danog/MadelineProto.git synced 2024-11-27 14:34:39 +01:00
This commit is contained in:
Daniil Gentili 2020-11-26 22:50:55 +01:00
parent 66f79c066e
commit e54965592f
Signed by: danog
GPG Key ID: 8C1BE3B34B230CA7
8 changed files with 13 additions and 13 deletions

2
docs

@ -1 +1 @@
Subproject commit e83c3ea026fc2142b6558378d0c9636c8c29f248 Subproject commit e0c0aaabf361a88523da0767d7342a2cfd56e8e4

View File

@ -130,7 +130,7 @@ class PostgresArray extends SqlArray
$this->setCache($index, $value); $this->setCache($index, $value);
$request = $this->execute( $request = $this->execute(
$this->set, self::STATEMENT_SET,
[ [
'index' => $index, 'index' => $index,
'value' => new ByteA(\serialize($value)), 'value' => new ByteA(\serialize($value)),

View File

@ -5281,6 +5281,7 @@ class InternalDoc extends APIFactory
* Get info about peer, returns an Info object. * Get info about peer, returns an Info object.
* *
* @param mixed $id Peer * @param mixed $id Peer
* @param MTProto::INFO_TYPE_* $type Whether to generate an Input*, an InputPeer or the full set of constructors
* @param boolean $recursive Internal * @param boolean $recursive Internal
* *
* @see https://docs.madelineproto.xyz/Info.html * @see https://docs.madelineproto.xyz/Info.html
@ -5307,11 +5308,11 @@ class InternalDoc extends APIFactory
* InputUser?: array{_: string, user_id?: int, access_hash?: mixed, min?: bool}, * InputUser?: array{_: string, user_id?: int, access_hash?: mixed, min?: bool},
* InputChannel?: array{_: string, channel_id: int, access_hash: mixed, min: bool}, * InputChannel?: array{_: string, channel_id: int, access_hash: mixed, min: bool},
* type: string * type: string
* }> * }>|int|array{_: string, user_id?: mixed, access_hash?: mixed, min?: mixed, chat_id?: mixed, channel_id?: mixed}|array{_: string, user_id?: int, access_hash?: mixed, min?: bool}|array{_: string, channel_id: int, access_hash: mixed, min: bool}
*/ */
public function getInfo($id, $recursive = true, array $extra = []) public function getInfo($id, int $type = \danog\MadelineProto\MTProto::INFO_TYPE_ALL, $recursive = true, array $extra = [])
{ {
return $this->__call(__FUNCTION__, [$id, $recursive, $extra]); return $this->__call(__FUNCTION__, [$id, $type, $recursive, $extra]);
} }
/** /**
* Get logger. * Get logger.

View File

@ -658,7 +658,7 @@ trait Files
if (\is_array($messageMedia) && ($messageMedia['min'] ?? false) && isset($messageMedia['access_hash'])) { if (\is_array($messageMedia) && ($messageMedia['min'] ?? false) && isset($messageMedia['access_hash'])) {
// bot API file ID // bot API file ID
$messageMedia['min'] = false; $messageMedia['min'] = false;
$peer = $this->genAll($messageMedia, MTProto::INFO_TYPE_PEER); $peer = $this->genAll($messageMedia, null, MTProto::INFO_TYPE_PEER);
} else { } else {
$peer = yield from $this->getInfo($messageMedia, MTProto::INFO_TYPE_PEER); $peer = yield from $this->getInfo($messageMedia, MTProto::INFO_TYPE_PEER);
} }

View File

@ -55,7 +55,7 @@ class MinDatabase implements TLCallback
private $API; private $API;
/** /**
* Whether we cleaned up old database information * Whether we cleaned up old database information.
* *
* @var boolean * @var boolean
*/ */

View File

@ -228,7 +228,7 @@ trait PeerHandler
} }
yield $this->chats->offsetSet($bot_api_id, $chat); yield $this->chats->offsetSet($bot_api_id, $chat);
$fullChat = yield $this->full_chats[$bot_api_id]; $fullChat = yield $this->full_chats[$bot_api_id];
if ($this->getSettings()->getPeer()->getFullFetch() && $this->getSetings()->getDb()->getEnableFullPeerDb() && (!$fullChat || $fullChat['full']['participants_count'] !== (yield from $this->getFullInfo($bot_api_id))['full']['participants_count'])) { if ($this->getSettings()->getPeer()->getFullFetch() && $this->getSettings()->getDb()->getEnableFullPeerDb() && (!$fullChat || $fullChat['full']['participants_count'] !== (yield from $this->getFullInfo($bot_api_id))['full']['participants_count'])) {
$this->cachePwrChat($bot_api_id, $this->getSettings()->getPeer()->getFullFetch(), true); $this->cachePwrChat($bot_api_id, $this->getSettings()->getPeer()->getFullFetch(), true);
} }
} }

View File

@ -19,7 +19,6 @@
namespace danog\MadelineProto\MTProtoTools; namespace danog\MadelineProto\MTProtoTools;
use Amp\Promise;
use danog\MadelineProto\Db\DbArray; use danog\MadelineProto\Db\DbArray;
use danog\MadelineProto\Db\DbPropertiesTrait; use danog\MadelineProto\Db\DbPropertiesTrait;
use danog\MadelineProto\Exception; use danog\MadelineProto\Exception;
@ -302,6 +301,7 @@ class ReferenceDatabase implements TLCallback
if ($key === -1) { if ($key === -1) {
throw new \danog\MadelineProto\Exception('Trying to add origin with no origin context set'); throw new \danog\MadelineProto\Exception('Trying to add origin with no origin context set');
} }
$constructor = $data->getConstructor();
$originType = \array_pop($this->cacheContexts); $originType = \array_pop($this->cacheContexts);
if (!isset($this->cache[$key])) { if (!isset($this->cache[$key])) {
$this->API->logger->logger("Removing origin context {$originType} for {$constructor}, nothing in the reference cache!", \danog\MadelineProto\Logger::ULTRA_VERBOSE); $this->API->logger->logger("Removing origin context {$originType} for {$constructor}, nothing in the reference cache!", \danog\MadelineProto\Logger::ULTRA_VERBOSE);
@ -310,7 +310,6 @@ class ReferenceDatabase implements TLCallback
$cache = $this->cache[$key]; $cache = $this->cache[$key];
unset($this->cache[$key]); unset($this->cache[$key]);
$origin = []; $origin = [];
$constructor = $data->getConstructor();
$body = $data->getBodyOrEmpty(); $body = $data->getBodyOrEmpty();
switch ($body ?? '') { switch ($body ?? '') {
case 'photos.updateProfilePhoto': case 'photos.updateProfilePhoto':