diff options
author | Timo Teräs <timo.teras@iki.fi> | 2010-06-08 10:24:21 +0300 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2010-06-08 10:24:21 +0300 |
commit | efe90d43c8de624f771d726d8412bfbc30002afa (patch) | |
tree | fcc182e43257e40183b8e2d4ea024e9c359d5db9 /src | |
parent | f85d87e5f9d0572bbb04ecb9aaad47f9c15b1703 (diff) | |
download | apk-tools-efe90d43c8de624f771d726d8412bfbc30002afa.tar.gz apk-tools-efe90d43c8de624f771d726d8412bfbc30002afa.tar.bz2 apk-tools-efe90d43c8de624f771d726d8412bfbc30002afa.tar.xz apk-tools-efe90d43c8de624f771d726d8412bfbc30002afa.zip |
state: fix error printing
Diffstat (limited to 'src')
-rw-r--r-- | src/apk.c | 2 | ||||
-rw-r--r-- | src/state.c | 6 |
2 files changed, 6 insertions, 2 deletions
@@ -105,6 +105,8 @@ int apk_print_indented(struct apk_indent *i, apk_blob_t blob) if (i->x + blob.len + 1 >= wrap_length) { i->x = i->indent; printf("\n%*s", i->indent - 1, ""); + } else if (i->x+1 < i->indent) { + printf("%*s", i->indent - i->x - 1, ""); } i->x += printf(" %.*s", blob.len, blob.ptr); return 0; diff --git a/src/state.c b/src/state.c index 4dd9c5b..178e4c9 100644 --- a/src/state.c +++ b/src/state.c @@ -41,7 +41,7 @@ static void apk_state_record_conflict(struct apk_state *state, { struct apk_name *name = pkg->name; - state->name[name->id] = (void*) (((intptr_t)state->name[name->id]) | APK_NS_ERROR); + state->name[name->id] = (void*) (((intptr_t) pkg) | APK_NS_ERROR | APK_NS_LOCKED); *apk_package_array_add(&state->conflicts) = pkg; } @@ -314,6 +314,7 @@ int apk_state_prune_dependency(struct apk_state *state, } if (c->num <= 1) { name_choices_unref(c); + state->name[name->id] = ns_from_pkg(NULL); return -1; } @@ -830,8 +831,9 @@ void apk_state_print_errors(struct apk_state *state) apk_error("Unable to satisfy all dependencies:"); es.prevpkg = pkg = state->conflicts->item[i]; - es.indent.x = es.indent.indent = + es.indent.x = printf(" %s-%s:", pkg->name->name, pkg->version); + es.indent.indent = es.indent.x + 1; for (j = 0; j < pkg->depends->num; j++) { r = apk_state_lock_dependency(state, &pkg->depends->item[j]); |