summaryrefslogtreecommitdiff
path: root/pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-11 16:04:20 -0800
committerMichael Forney <mforney@mforney.org>2016-12-13 23:10:30 -0800
commit293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch)
tree6ecd1170e3dd793862dd852814dc1b4cd5e44260 /pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch
parent9a506a6834df01a26795cea222b410f206efa9fa (diff)
Move to flat package hierarchy
Note to self: never try to move submodules again To migrate your existing submodules (more or less): set -x set -e mkdir .git/modules/pkg for old in */*/src ; do new="pkg/${old#*/}" if ! [ -f "$old/.git" ] || [ "${old%%/*}" = pkg ] ; then continue fi git -C ".git/modules/$old" config core.worktree "../../../../../$new" rmdir "$new" mv "$old" "$new" sed -e "s,$old,$new," "$new/.git" > "$new/.git.tmp" mv "$new/.git.tmp" "$new/.git" mkdir ".git/modules/${new%/src}" mv ".git/modules/$old" ".git/modules/$new" rm "${old%/src}"/*.ninja mv "${old%/src}"/*.tar.{gz,xz,bz2} "${new%/src}/" rmdir "${old%/src}" || true done sed -e 's,^\[submodule "[^/]*/,[submodule "pkg/,' .git/config > .git/config.tmp mv .git/config.tmp .git/config
Diffstat (limited to 'pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch')
-rw-r--r--pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch62
1 files changed, 62 insertions, 0 deletions
diff --git a/pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch b/pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch
new file mode 100644
index 00000000..d028a336
--- /dev/null
+++ b/pkg/sshfs/patch/0004-Use-struct-list_head-instead-of-GList.patch
@@ -0,0 +1,62 @@
+From 7b8c2f9e7484db2031ff1190b85be085524dfe2b Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Sun, 5 Jun 2016 17:30:20 -0700
+Subject: [PATCH] Use struct list_head instead of GList
+
+---
+ sshfs.c | 16 +++++++---------
+ 1 file changed, 7 insertions(+), 9 deletions(-)
+
+diff --git a/sshfs.c b/sshfs.c
+index f43ae5a..14adca5 100644
+--- a/sshfs.c
++++ b/sshfs.c
+@@ -2180,13 +2180,13 @@ static int sshfs_req_pending(struct request *req)
+ static int sftp_readdir_async(struct buffer *handle, fuse_cache_dirh_t h,
+ fuse_cache_dirfil_t filler)
+ {
++ int done = 0;
+ int err = 0;
+ int outstanding = 0;
+ int max = READDIR_START;
+- GList *list = NULL;
+-
+- int done = 0;
++ struct list_head list;
+
++ list_init(&list);
+ while (!done || outstanding) {
+ struct request *req;
+ struct buffer name;
+@@ -2201,16 +2201,14 @@ static int sftp_readdir_async(struct buffer *handle, fuse_cache_dirh_t h,
+ break;
+ }
+
+- list = g_list_append(list, req);
++ list_add(&req->list, &list);
+ outstanding++;
+ }
+
+ if (outstanding) {
+- GList *first;
+ /* wait for response to next request */
+- first = g_list_first(list);
+- req = first->data;
+- list = g_list_delete_link(list, first);
++ req = list_entry(list.prev, struct request, list);
++ list_del(&req->list);
+ outstanding--;
+
+ if (done) {
+@@ -2244,7 +2242,7 @@ static int sftp_readdir_async(struct buffer *handle, fuse_cache_dirh_t h,
+ }
+ }
+ }
+- assert(list == NULL);
++ assert(list_empty(&list));
+
+ return err;
+ }
+--
+2.9.0
+