rendered paste body--- src/data/socket_file.cc.orig 2008-02-06 13:42:49.000000000 +0100+++ src/data/socket_file.cc 2008-02-06 13:46:25.000000000 +0100@@ -134,6 +134,16 @@ if (!is_open()) throw internal_error("SocketFile::set_size() called on a closed file"); + #define CHUNK_SIZE 4096+ int i, w;+ char block[CHUNK_SIZE] = {0};++ for (i=0, w=0; i<size; i+=w) {+ w = write(m_fd, block, CHUNK_SIZE);+ if (w == -1)+ throw internal_error("SocketFile::write() failed");+ }+ if (ftruncate(m_fd, size) == 0) return true;