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.
This commit is contained in:
parent
83b1b0ff69
commit
0fcb7dc65c
@ -205,6 +205,7 @@ static bool
|
|||||||
directory_exists(const struct directory *directory)
|
directory_exists(const struct directory *directory)
|
||||||
{
|
{
|
||||||
char *path_fs;
|
char *path_fs;
|
||||||
|
GFileTest test;
|
||||||
bool exists;
|
bool exists;
|
||||||
|
|
||||||
path_fs = map_directory_fs(directory);
|
path_fs = map_directory_fs(directory);
|
||||||
@ -212,7 +213,11 @@ directory_exists(const struct directory *directory)
|
|||||||
/* invalid path: cannot exist */
|
/* invalid path: cannot exist */
|
||||||
return false;
|
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);
|
g_free(path_fs);
|
||||||
|
|
||||||
return exists;
|
return exists;
|
||||||
|
Loading…
Reference in New Issue
Block a user