]> git.sesse.net Git - vlc/commitdiff
Lua: Avoid segmentation fault on recv() fail
authorSrikanth Raju <srikiraju@gmail.com>
Thu, 11 Mar 2010 15:28:58 +0000 (20:58 +0530)
committerJean-Philippe André <jpeg@videolan.org>
Sat, 20 Mar 2010 17:34:03 +0000 (18:34 +0100)
Signed-off-by: Jean-Philippe André <jpeg@videolan.org>
modules/misc/lua/libs/net.c

index b8d309192899523527644f3d7d828207cb712dbe..b5227d2ca60c95609831f365e145b7c0317263cd 100644 (file)
@@ -185,8 +185,13 @@ static int vlclua_net_recv( lua_State *L )
     size_t i_len = luaL_optint( L, 2, 1 );
     char psz_buffer[i_len];
     i_len = recv( i_fd, psz_buffer, i_len, 0 );
-    lua_pushlstring( L, psz_buffer, i_len );
-    return 1;
+    if( i_len > 0 )
+    {
+        lua_pushlstring( L, psz_buffer, i_len );
+        return 1;
+    }
+    else
+        return 0;
 }
 
 /*****************************************************************************