diff options
Diffstat (limited to 'Sluift/component.cpp')
| -rw-r--r-- | Sluift/component.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/Sluift/component.cpp b/Sluift/component.cpp index df96d43..c1b1da4 100644 --- a/Sluift/component.cpp +++ b/Sluift/component.cpp @@ -1,18 +1,16 @@ /* - * Copyright (c) 2014-2016 Isode Limited. + * Copyright (c) 2014-2018 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <boost/assign/list_of.hpp> -#include <boost/lambda/bind.hpp> -#include <boost/lambda/lambda.hpp> #include <Swiften/Base/IDGenerator.h> #include <Swiften/Elements/DiscoInfo.h> #include <Swiften/Elements/MAMQuery.h> #include <Swiften/Elements/Message.h> #include <Swiften/Elements/Presence.h> #include <Swiften/Elements/RawXMLPayload.h> #include <Swiften/Elements/RosterItemPayload.h> #include <Swiften/Elements/RosterPayload.h> @@ -35,19 +33,18 @@ #include <Sluift/Lua/Check.h> #include <Sluift/Lua/Exception.h> #include <Sluift/Lua/FunctionRegistration.h> #include <Sluift/Lua/LuaUtils.h> #include <Sluift/Lua/Value.h> #include <Sluift/SluiftComponent.h> #include <Sluift/globals.h> using namespace Swift; -namespace lambda = boost::lambda; static inline SluiftComponent* getComponent(lua_State* L) { return *Lua::checkUserData<SluiftComponent>(L, 1); } static inline int getGlobalTimeout(lua_State* L) { lua_rawgeti(L, LUA_REGISTRYINDEX, Sluift::globals.moduleLibIndex); lua_getfield(L, -1, "timeout"); int result = boost::numeric_cast<int>(lua_tointeger(L, -1)); @@ -93,25 +90,25 @@ static std::vector< std::shared_ptr<Payload> > getPayloadsFromTable(lua_State* L } lua_pop(L, 1); return result; } SLUIFT_LUA_FUNCTION(Component, async_connect) { SluiftComponent* component = getComponent(L); std::string host; - int port = 0; + unsigned short port = 0; if (lua_istable(L, 2)) { if (boost::optional<std::string> hostString = Lua::getStringField(L, 2, "host")) { host = *hostString; } if (boost::optional<int> portInt = Lua::getIntField(L, 2, "port")) { - port = *portInt; + port = boost::numeric_cast<unsigned short>(*portInt); } } component->connect(host, port); return 0; } SLUIFT_LUA_FUNCTION_WITH_HELP( Component, set_trace_enabled, "Enable/disable tracing of the data sent/received.\n\n.", @@ -427,19 +424,21 @@ SLUIFT_LUA_FUNCTION(Component, get_next_event) { } } boost::optional<SluiftComponent::Event> event; if (condition) { event = component->getNextEvent(timeout, CallUnaryLuaPredicateOnEvent(L, condition)); } else if (type) { event = component->getNextEvent( - timeout, lambda::bind(&SluiftComponent::Event::type, lambda::_1) == *type); + timeout, [&](const SluiftComponent::Event& event) { + return event.type == *type; + }); } else { event = component->getNextEvent(timeout); } if (event) { pushEvent(L, *event); } else { |
Swift