Commit 0fcb7dc6 authored by Max Kellermann's avatar Max Kellermann

update: use G_FILE_TEST_IS_REGULAR for archive files

When checking whether database entries have been deleted, don't check if an archive file is a directory (G_FILE_TEST_IS_DIR), use G_FILE_TEST_IS_REGULAR for this case instead. To determine if a "struct directory" is an archive, check for device==DEVICE_INARCHIVE. This is always false after loading the database, so this patch is not complete yet.
parent 83b1b0ff
......@@ -205,6 +205,7 @@ static bool
directory_exists(const struct directory *directory)
{
char *path_fs;
GFileTest test;
bool exists;
path_fs = map_directory_fs(directory);
......@@ -212,7 +213,11 @@ directory_exists(const struct directory *directory)
/* invalid path: cannot exist */
return false;
exists = g_file_test(path_fs, G_FILE_TEST_IS_DIR);
test = directory->device == DEVICE_INARCHIVE
? G_FILE_TEST_IS_REGULAR
: G_FILE_TEST_IS_DIR;
exists = g_file_test(path_fs, test);
g_free(path_fs);
return exists;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment