All pastes #894036 Raw Edit

no-sparse.patch

public diff v1 · immutable
#894036 ·published 2008-02-06 17:03 UTC
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;