On Mon, Jul 08, 2013 at 11:22:15AM +1000, Allan McRae wrote:
On 08/07/13 09:53, Dave Reisner wrote:
As seen: https://bbs.archlinux.org/viewtopic.php?pid=1297766
I know it takes some time, but actually explaining what was seen in that thread rather than just linking it will save everyone who looks at this commit some time.
Fair enough... and who knows, maybe the bbs will go away some day ;)
Signed-off-by: Dave Reisner <dreisner@archlinux.org> --- lib/libalpm/be_sync.c | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/lib/libalpm/be_sync.c b/lib/libalpm/be_sync.c index feda6f5..f3e0a33 100644 --- a/lib/libalpm/be_sync.c +++ b/lib/libalpm/be_sync.c @@ -561,6 +561,13 @@ static int sync_db_read(alpm_db_t *db, struct archive *archive, return -1; }
+ if(filename == NULL) { + /* A file exists outside of a subdirectory. This isn't a read error, so return + * success and try to continue on. */ + _alpm_log(db->handle, ALPM_LOG_DEBUG, "unknown database file: %s\n", filename);
Only a debug level statement? I think a warning would be appropriate:
warning: database "foo" contains unknown file: ...
But need to check where that would actually print.
I copied this from the final else branch of the if/else tree in sync_db_read() which relegates messages about unknown entries to debug level as well. This was strictly for consistency -- if you'd prefer that we print both of these as warnings, I can make that change as part of this patch.
+ return 0; + } + if(strcmp(filename, "desc") == 0 || strcmp(filename, "depends") == 0 || (strcmp(filename, "deltas") == 0 && db->handle->deltaratio > 0.0) ) { int ret;