diff options
-rw-r--r-- | archival/dpkg.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/archival/dpkg.c b/archival/dpkg.c index 9a3bff979..9a95eb46a 100644 --- a/archival/dpkg.c +++ b/archival/dpkg.c | |||
@@ -989,10 +989,14 @@ int check_deps(deb_file_t **deb_file, int deb_start, int dep_max_count) | |||
989 | 989 | ||
990 | for (j = 0; j < package_hashtable[deb_file[i]->package]->num_of_edges; j++) { | 990 | for (j = 0; j < package_hashtable[deb_file[i]->package]->num_of_edges; j++) { |
991 | const edge_t *package_edge = package_node->edge[j]; | 991 | const edge_t *package_edge = package_node->edge[j]; |
992 | const unsigned int package_num = search_package_hashtable(package_edge->name, | 992 | unsigned int package_num; |
993 | package_edge->version, package_edge->operator); | ||
994 | 993 | ||
994 | package_num = search_package_hashtable(package_edge->name, package_edge->version, package_edge->operator); | ||
995 | if (package_hashtable[package_num] == NULL) { | ||
996 | error_msg_and_die("Dependency checking failed for package %s\nNOTE: This may be due to busybox dpkg's inability to handle the Provides field, you may avoid dependency checking using the -F option ", name_hashtable[package_edge->name]); | ||
997 | } | ||
995 | status_num = search_status_hashtable(name_hashtable[package_hashtable[package_num]->name]); | 998 | status_num = search_status_hashtable(name_hashtable[package_hashtable[package_num]->name]); |
999 | |||
996 | state_status = get_status(status_num, 3); | 1000 | state_status = get_status(status_num, 3); |
997 | state_want = get_status(status_num, 1); | 1001 | state_want = get_status(status_num, 1); |
998 | switch (package_edge->type) { | 1002 | switch (package_edge->type) { |