summarylogtreecommitdiffstats
path: root/fix-excessive-sync.patch
diff options
context:
space:
mode:
authoranthraxx2015-06-18 18:02:20 +0200
committeranthraxx2015-06-18 18:02:20 +0200
commit94f74cf3b82159950094abc8f33080e1d6c11fa6 (patch)
tree74031f15a1dfd9ddedbba8c087d592cf13a6838e /fix-excessive-sync.patch
downloadaur-tcpxtract.tar.gz
addpkg: tcpxtract 1.0.1-5
Diffstat (limited to 'fix-excessive-sync.patch')
-rw-r--r--fix-excessive-sync.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/fix-excessive-sync.patch b/fix-excessive-sync.patch
new file mode 100644
index 000000000000..c6c27a79b0f5
--- /dev/null
+++ b/fix-excessive-sync.patch
@@ -0,0 +1,25 @@
+From: Nico Golde <nion@debian.org>
+Bug: http://bugs.debian.org/623140
+Description: remove excessive sync calls causing lots of disk activity and replace by fsync on closing the file.
+
+Index: tcpxtract-1.0.1/extract.c
+===================================================================
+--- tcpxtract-1.0.1.orig/extract.c 2011-04-19 16:07:25.000000000 +0200
++++ tcpxtract-1.0.1/extract.c 2011-04-19 16:10:21.000000000 +0200
+@@ -163,7 +163,6 @@
+ error("Quiting.");
+ }
+ elist->nwritten += nbytes;
+- sync();
+ }
+
+ /* remove all finished extracts from the list */
+@@ -182,6 +181,8 @@
+ eptr->next->prev = eptr->prev;
+ if (*elist == eptr)
+ *elist = eptr->next;
++
++ fsync(eptr->fd);
+ close(eptr->fd);
+ free(eptr);
+ }