no-sparse.patch
- --- 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;