Somewhere around line 240 in channel.c
w_bytes = wip_write( c, buf + offset, buflen - offset);
if( w_bytes < buflen) break;
wip does not guarantee to send all (or no) requested data. It returns number of accepted bytes. This may solve the problem:
w_bytes = wip_write( c, buf + offset, buflen - offset);
if( w_bytes < buflen - offset) {
offset += w_bytes;
break;
}
I’ve also had problems with stric.lua when lua_setglobal. This link has solution that worked for me:
http://lua-users.org/lists/lua-l/2006-11/msg00116.html