mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-25 04:18:08 +01:00
lib: catch exceptions in n_directory_get_child_files
Also clarify API in error case.
This commit is contained in:
parent
3890d98966
commit
337665e26a
3 changed files with 10 additions and 5 deletions
|
@ -261,15 +261,19 @@ notmuch_filenames_t *
|
||||||
notmuch_directory_get_child_files (notmuch_directory_t *directory)
|
notmuch_directory_get_child_files (notmuch_directory_t *directory)
|
||||||
{
|
{
|
||||||
char *term;
|
char *term;
|
||||||
notmuch_filenames_t *child_files;
|
notmuch_filenames_t *child_files = NULL;
|
||||||
|
|
||||||
term = talloc_asprintf (directory, "%s%u:",
|
term = talloc_asprintf (directory, "%s%u:",
|
||||||
_find_prefix ("file-direntry"),
|
_find_prefix ("file-direntry"),
|
||||||
directory->document_id);
|
directory->document_id);
|
||||||
|
|
||||||
|
try {
|
||||||
child_files = _create_filenames_for_terms_with_prefix (directory,
|
child_files = _create_filenames_for_terms_with_prefix (directory,
|
||||||
directory->notmuch,
|
directory->notmuch,
|
||||||
term);
|
term);
|
||||||
|
} catch (Xapian::Error &error) {
|
||||||
|
LOG_XAPIAN_EXCEPTION (directory, error);
|
||||||
|
}
|
||||||
|
|
||||||
talloc_free (term);
|
talloc_free (term);
|
||||||
|
|
||||||
|
|
|
@ -2148,6 +2148,8 @@ notmuch_directory_get_mtime (notmuch_directory_t *directory);
|
||||||
*
|
*
|
||||||
* The returned filenames will be the basename-entries only (not
|
* The returned filenames will be the basename-entries only (not
|
||||||
* complete paths).
|
* complete paths).
|
||||||
|
*
|
||||||
|
* Returns NULL if it triggers a Xapian exception
|
||||||
*/
|
*/
|
||||||
notmuch_filenames_t *
|
notmuch_filenames_t *
|
||||||
notmuch_directory_get_child_files (notmuch_directory_t *directory);
|
notmuch_directory_get_child_files (notmuch_directory_t *directory);
|
||||||
|
|
|
@ -58,7 +58,6 @@ EOF
|
||||||
test_expect_equal_file EXPECTED OUTPUT
|
test_expect_equal_file EXPECTED OUTPUT
|
||||||
|
|
||||||
test_begin_subtest "get child filenames for a closed db"
|
test_begin_subtest "get child filenames for a closed db"
|
||||||
test_subtest_known_broken
|
|
||||||
cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
|
cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
|
||||||
{
|
{
|
||||||
notmuch_filenames_t *children;
|
notmuch_filenames_t *children;
|
||||||
|
|
Loading…
Reference in a new issue