From 952748a86c4ddf1d7e47b358a64904c35bacd4aa Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 17 Aug 2018 00:15:05 +0800 Subject: *update --- src/lua/net/luaopen_Socket.cpp | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) (limited to 'src/lua/net/luaopen_Socket.cpp') diff --git a/src/lua/net/luaopen_Socket.cpp b/src/lua/net/luaopen_Socket.cpp index 40a62b6..4f8c45a 100644 --- a/src/lua/net/luaopen_Socket.cpp +++ b/src/lua/net/luaopen_Socket.cpp @@ -29,10 +29,9 @@ namespace lua static int l_accept(lua_State* L) { Ref& socket = checkSocket(L); - Socket* client = (*socket).accept(); - Ref* ref = new Ref(client); + Socket* client = socket->accept(); Proxy* proxy = (Proxy*)luax_newinstance(L, JIN_NETWORK_SOCKET, sizeof(Proxy)); - proxy->bind(ref, JIN_NETWORK_SOCKET); + proxy->bind(new Ref(client), JIN_NETWORK_SOCKET); return 1; } @@ -41,11 +40,10 @@ namespace lua { Ref& socket = checkSocket(L); char buffer[BUFFER_SIZE] = {0}; - int size = (*socket).receive(buffer, BUFFER_SIZE); + int size = socket->receive(buffer, BUFFER_SIZE); Proxy* proxy = (Proxy*)luax_newinstance(L, JIN_NETWORK_BUFFER, sizeof(Proxy)); net::Buffer* netBuffer = new net::Buffer(buffer, size); - Ref* ref = new Ref(netBuffer); - proxy->bind(ref, JIN_NETWORK_BUFFER); + proxy->bind(new Ref(netBuffer), JIN_NETWORK_BUFFER); return 1; } @@ -56,11 +54,10 @@ namespace lua int address = luax_checkinteger(L, 2); int port = luax_checkinteger(L, 3); char buffer[BUFFER_SIZE]; - int size = (*socket).receiveFrom(buffer, BUFFER_SIZE, address, port); + int size = socket->receiveFrom(buffer, BUFFER_SIZE, address, port); net::Buffer* netBuffer = new net::Buffer(buffer, size); - Ref* ref = new Ref(netBuffer); Proxy* proxy = (Proxy*)luax_newinstance(L, JIN_NETWORK_BUFFER, sizeof(Proxy)); - proxy->bind(ref, JIN_NETWORK_BUFFER); + proxy->bind(new Ref(netBuffer), JIN_NETWORK_BUFFER); return 1; } @@ -69,8 +66,7 @@ namespace lua { Ref& socket = checkSocket(L); Ref& ref = checkNetBuffer(L, 2); - net::Buffer* buffer = &*ref; - int len = (*socket).send(buffer->buffer, buffer->size); + int len = socket->send(ref->buffer, ref->size); luax_pushinteger(L, len); return 1; } @@ -81,16 +77,15 @@ namespace lua Ref& socket = checkSocket(L); int address = luax_checkinteger(L, 2); int port = luax_checkinteger(L, 3); - Ref& ref = checkNetBuffer(L, 4); - net::Buffer* buffer = &*ref; - (*socket).sendTo(buffer->buffer, buffer->size, address, port); + Ref& buffer = checkNetBuffer(L, 4); + socket->sendTo(buffer->buffer, buffer->size, address, port); return 0; } static int l_close(lua_State* L) { Ref& socket = checkSocket(L); - (*socket).close(); + socket->close(); return 0; } @@ -98,7 +93,7 @@ namespace lua { Ref& socket = checkSocket(L); bool blocking = luax_checkbool(L, 2); - (*socket).configureBlocking(blocking); + socket->configureBlocking(blocking); return 0; } -- cgit v1.1-26-g67d0