mirror of https://github.com/procxx/kepka.git
Fix build for GCC.
This commit is contained in:
parent
f29b331470
commit
2a8b6f05c8
|
@ -343,15 +343,17 @@ protected:
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename TReturn, typename TReceiver>
|
template <typename TReceiver>
|
||||||
class RPCDoneHandlerBareOwned : public RPCOwnedDoneHandler { // done(from, end)
|
class RPCDoneHandlerBareOwned : public RPCOwnedDoneHandler { // done(from, end)
|
||||||
using CallbackType = TReturn (TReceiver::*)(const mtpPrime *, const mtpPrime *);
|
using CallbackType = bool (TReceiver::*)(const mtpPrime *, const mtpPrime *);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
RPCDoneHandlerBareOwned(TReceiver *receiver, CallbackType onDone) : RPCOwnedDoneHandler(receiver), _onDone(onDone) {
|
RPCDoneHandlerBareOwned(TReceiver *receiver, CallbackType onDone) : RPCOwnedDoneHandler(receiver), _onDone(onDone) {
|
||||||
}
|
}
|
||||||
bool operator()(mtpRequestId requestId, const mtpPrime *from, const mtpPrime *end) override {
|
bool operator()(mtpRequestId requestId, const mtpPrime *from, const mtpPrime *end) override {
|
||||||
if (_owner) (static_cast<TReceiver*>(_owner)->*_onDone)(from, end);
|
return _owner
|
||||||
|
? (static_cast<TReceiver*>(_owner)->*_onDone)(from, end)
|
||||||
|
: true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -713,9 +715,9 @@ private:
|
||||||
|
|
||||||
class RPCSender {
|
class RPCSender {
|
||||||
public:
|
public:
|
||||||
template <typename TReturn, typename TReceiver> // done(from, end)
|
template <typename TReceiver> // done(from, end)
|
||||||
RPCDoneHandlerPtr rpcDone(TReturn (TReceiver::*onDone)(const mtpPrime *, const mtpPrime *)) {
|
RPCDoneHandlerPtr rpcDone(bool (TReceiver::*onDone)(const mtpPrime *, const mtpPrime *)) {
|
||||||
return RPCDoneHandlerPtr(new RPCDoneHandlerBareOwned<TReturn, TReceiver>(static_cast<TReceiver*>(this), onDone));
|
return RPCDoneHandlerPtr(new RPCDoneHandlerBareOwned<TReceiver>(static_cast<TReceiver*>(this), onDone));
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename TReceiver> // done(from, end, req_id)
|
template <typename TReceiver> // done(from, end, req_id)
|
||||||
|
|
Loading…
Reference in New Issue