[gnc-filepath-utils.cpp] null check char* arguments

This commit is contained in:
Christopher Lam committed 2026-05-16 18:31:28 +08:00
1 parent f9e2fb9130
commit 96dac7bb38
2 files changed
+4

No files matched your search

@@ -1326,6 +1326,7 @@ backup_regex (".*[.](?:xac|gnucash)[.][0-9]{14}[.](?:xac|gnucash)$");
gboolean gnc_filename_is_backup (const char *filename)
{
g_return_val_if_fail (filename, FALSE);
return std::regex_match (filename, backup_regex);
}
@@ -1334,6 +1335,7 @@ datafile_regex (".*[.](?:xac|gnucash)$");
gboolean gnc_filename_is_datafile (const char *filename)
{
g_return_val_if_fail (filename, FALSE);
return !gnc_filename_is_backup (filename) &&
std::regex_match (filename, datafile_regex);
}
@@ -141,10 +141,12 @@ TEST_F(PathTest, gnc_path_get_sysconfdir)
TEST_F (PathTest, gnc_filename_is_backup)
{
EXPECT_EQ (gnc_filename_is_backup (nullptr), false);
EXPECT_EQ (gnc_filename_is_backup (""), false);
EXPECT_EQ (gnc_filename_is_backup ("a.gnucash"), false);
EXPECT_EQ (gnc_filename_is_backup ("a.gnucash.20201131010203.gnucash"), true);
EXPECT_EQ (gnc_filename_is_datafile (nullptr), false);
EXPECT_EQ (gnc_filename_is_datafile (""), false);
EXPECT_EQ (gnc_filename_is_datafile ("a.gnucash"), true);
EXPECT_EQ (gnc_filename_is_datafile ("a.gnucash.20201131010203.gnucash"), false);