summaryrefslogtreecommitdiffhomepage
path: root/libs
diff options
context:
space:
mode:
authorSteven Barth <steven@midlink.org>2009-06-10 23:28:16 +0000
committerSteven Barth <steven@midlink.org>2009-06-10 23:28:16 +0000
commit690927bf6bb1fa52780266b3b7884c70d465632f (patch)
treee4f4b994f38729d4597cf1abefbbac0b5a595dac /libs
parent2ef4b11de93165bd197b1583997f5c78d6bc64e5 (diff)
Some sendfile() under Linux 2.4 is broken
Diffstat (limited to 'libs')
-rw-r--r--libs/nixio/lua/nixio/util.lua4
1 files changed, 3 insertions, 1 deletions
diff --git a/libs/nixio/lua/nixio/util.lua b/libs/nixio/lua/nixio/util.lua
index 6f929519b..0e8c90c9a 100644
--- a/libs/nixio/lua/nixio/util.lua
+++ b/libs/nixio/lua/nixio/util.lua
@@ -23,6 +23,8 @@ local ZIOBLKSIZE = 65536
local socket = nixio.meta_socket
local tls_socket = nixio.meta_tls_socket
local file = nixio.meta_file
+local uname = nixio.uname()
+local ZBUG = uname.sysname == "Linux" and uname.release:sub(1, 3) == "2.4"
function consume(iter)
local tbl = {}
@@ -191,7 +193,7 @@ function meta.copyz(self, fd, size)
local sent, lsent, code, msg = 0
local splicable
- if self:is_file() then
+ if not ZBUG and self:is_file() then
local ftype = self:stat("type")
if nixio.sendfile and fd:is_socket() and ftype == "reg" then
repeat