diff options
Diffstat (limited to 'packages/ipkg/files/sw.patch')
-rw-r--r-- | packages/ipkg/files/sw.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/packages/ipkg/files/sw.patch b/packages/ipkg/files/sw.patch new file mode 100644 index 0000000000..3352f2d7c1 --- /dev/null +++ b/packages/ipkg/files/sw.patch @@ -0,0 +1,27 @@ +Index: pkg_depends.c +=================================================================== +RCS file: /cvs/familiar/dist/ipkg/C/pkg_depends.c,v +retrieving revision 1.65 +diff -u -r1.65 pkg_depends.c +--- C/pkg_depends.c 16 Sep 2005 20:03:48 -0000 1.65 ++++ C/pkg_depends.c 17 Apr 2006 18:36:41 -0000 +@@ -106,6 +108,11 @@ + satisfier_entry_pkg = NULL; + + if (compound_depend->type == GREEDY_DEPEND) { ++ int old_sw = pkg->state_want; ++ /* Mark this package as to-be-installed temporarily, ++ since some of the dependent packages may in turn ++ depend on this one. */ ++ pkg->state_want = SW_INSTALL; + /* foreach possible satisfier */ + for (j = 0; j < compound_depend->possibility_count; j++) { + /* foreach provided_by, which includes the abstract_pkg itself */ +@@ -161,6 +171,7 @@ + } + } + } ++ pkg->state_want = old_sw; + + continue; + } |