Don't try to rerun control scripts, problems caused by circular dependencies.
authorgraham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>
Wed, 11 Nov 2009 02:10:49 +0000 (02:10 +0000)
committergraham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>
Wed, 11 Nov 2009 02:10:49 +0000 (02:10 +0000)
Symptoms of this problem are seeing the following when installing a package:
opkg: (null): Bad address
opkg: (null): Bad address

git-svn-id: http://opkg.googlecode.com/svn/trunk@281 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358

libopkg/opkg_install.c

index 4a1ff9ac441cd7dd402145af1f0e2446d5c23640..15e15c778a539681074e151694013f76e45e21ba 100644 (file)
@@ -910,6 +910,9 @@ int opkg_install_pkg(opkg_conf_t *conf, pkg_t *pkg, int from_upgrade)
      if (conf->nodeps == 0) {
          err = satisfy_dependencies_for(conf, pkg);
          if (err) { return OPKG_INSTALL_ERR_DEPENDENCIES; }
+          if (pkg->state_status == SS_UNPACKED)
+               /* Circular dependency has installed it for us. */
+               return 0;
      }
 
      replacees = pkg_vec_alloc();