aboutsummaryrefslogtreecommitdiff
path: root/src/lua/net/luaopen_Socket.cpp
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-08-17 00:15:05 +0800
committerchai <chaifix@163.com>2018-08-17 00:15:05 +0800
commit952748a86c4ddf1d7e47b358a64904c35bacd4aa (patch)
tree2b65d1021a5b62beac5ac6b229b43856eaec29e9 /src/lua/net/luaopen_Socket.cpp
parent7f7f6b3f19703eaeaad3801e47749e0173faa2fc (diff)
*update
Diffstat (limited to 'src/lua/net/luaopen_Socket.cpp')
-rw-r--r--src/lua/net/luaopen_Socket.cpp27
1 files changed, 11 insertions, 16 deletions
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>& socket = checkSocket(L);
- Socket* client = (*socket).accept();
- Ref<Socket>* ref = new Ref<Socket>(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<Socket>(client), JIN_NETWORK_SOCKET);
return 1;
}
@@ -41,11 +40,10 @@ namespace lua
{
Ref<Socket>& 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<Buffer>* ref = new Ref<Buffer>(netBuffer);
- proxy->bind(ref, JIN_NETWORK_BUFFER);
+ proxy->bind(new Ref<Buffer>(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<Buffer>* ref = new Ref<Buffer>(netBuffer);
Proxy* proxy = (Proxy*)luax_newinstance(L, JIN_NETWORK_BUFFER, sizeof(Proxy));
- proxy->bind(ref, JIN_NETWORK_BUFFER);
+ proxy->bind(new Ref<Buffer>(netBuffer), JIN_NETWORK_BUFFER);
return 1;
}
@@ -69,8 +66,7 @@ namespace lua
{
Ref<Socket>& socket = checkSocket(L);
Ref<Buffer>& 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>& socket = checkSocket(L);
int address = luax_checkinteger(L, 2);
int port = luax_checkinteger(L, 3);
- Ref<Buffer>& ref = checkNetBuffer(L, 4);
- net::Buffer* buffer = &*ref;
- (*socket).sendTo(buffer->buffer, buffer->size, address, port);
+ Ref<Buffer>& buffer = checkNetBuffer(L, 4);
+ socket->sendTo(buffer->buffer, buffer->size, address, port);
return 0;
}
static int l_close(lua_State* L)
{
Ref<Socket>& socket = checkSocket(L);
- (*socket).close();
+ socket->close();
return 0;
}
@@ -98,7 +93,7 @@ namespace lua
{
Ref<Socket>& socket = checkSocket(L);
bool blocking = luax_checkbool(L, 2);
- (*socket).configureBlocking(blocking);
+ socket->configureBlocking(blocking);
return 0;
}