static int
opkg_install_cmd(int argc, char **argv)
{
- int i;
+ int i, r;
char *arg;
int err=0;
}
}
- opkg_configure_packages(NULL);
+ r = opkg_configure_packages(NULL);
+ if (!err)
+ err = r;
write_status_files_if_changed();
static int
opkg_upgrade_cmd(int argc, char **argv)
{
- int i;
+ int i, r;
pkg_t *pkg;
int err;
pkg_vec_free(installed);
}
- opkg_configure_packages(NULL);
+ r = opkg_configure_packages(NULL);
+ if (!err)
+ err = r;
write_status_files_if_changed();
static int
opkg_download_cmd(int argc, char **argv)
{
- int i, err;
+ int i, err = 0;
char *arg;
pkg_t *pkg;
}
}
- return 0;
+ return err;
}
static int
opkg_remove_cmd(int argc, char **argv)
{
- int i, a, done;
+ int i, a, done, r, err = 0;
pkg_t *pkg;
pkg_t *pkg_to_remove;
pkg_vec_t *available;
opkg_msg(ERROR, "Package %s not installed.\n", pkg->name);
continue;
}
- opkg_remove_pkg(pkg_to_remove, 0);
+ r = opkg_remove_pkg(pkg_to_remove, 0);
+ if (!err)
+ err = r;
+
done = 1;
}
}
opkg_msg(NOTICE, "No packages removed.\n");
write_status_files_if_changed();
- return 0;
+ return err;
}
static int
static int
pkg_remove_orphan_dependent(pkg_t *pkg, pkg_t *old_pkg)
{
- int i, j, k, l, found;
+ int i, j, k, l, found,r, err = 0;
int n_deps;
pkg_t *p;
struct compound_depend *cd0, *cd1;
* which we need to ignore during removal. */
p->state_flag |= SF_REPLACE;
- opkg_remove_pkg(p, 0);
+ r = opkg_remove_pkg(p, 0);
+ if (!err)
+ err = r;
} else
opkg_msg(INFO, "%s was autoinstalled and is "
"still required by %d "
}
}
- return 0;
+ return err;
}
/* returns number of installed replacees */
free(new_version);
return rc;
} else {
- char message_out[15] ;
- memset(message_out,'\x0',15);
- if ( message )
- strncpy( message_out,"Upgrading ",strlen("Upgrading ") );
- else
- strncpy( message_out,"Installing ",strlen("Installing ") );
- char *version = pkg_version_str_alloc(pkg);
-
- if(!conf->download_only)
- opkg_msg(NOTICE, "%s%s (%s) to %s...\n", message_out,
+ char message_out[15] ;
+ memset(message_out,'\x0',15);
+ if ( message )
+ strncpy( message_out,"Upgrading ",strlen("Upgrading ") );
+ else
+ strncpy( message_out,"Installing ",strlen("Installing ") );
+ char *version = pkg_version_str_alloc(pkg);
+
+ if(!conf->download_only)
+ opkg_msg(NOTICE, "%s%s (%s) to %s...\n", message_out,
pkg->name, version, pkg->dest->name);
- free(version);
- return 0;
+ free(version);
}
+ return 0;
}
static int
remove_obsolesced_files(pkg_t *pkg, pkg_t *old_pkg)
{
- int err;
+ int err = 0;
str_list_t *old_files;
str_list_elt_t *of;
str_list_t *new_files;
pkg_free_installed_files(old_pkg);
pkg_free_installed_files(pkg);
- return 0;
+ return err;
}
static int