[Libosinfo] [osinfo-db-tools PATCH 1/3] import: Don't call unlink(NULL)
Fabiano Fidêncio
fidencio at redhat.com
Mon May 20 12:39:11 UTC 2019
Although `man 3 unlink` doesn't mention what should be the unlink()
behaviour when NULL is passed to it, both coverity and clang complains
about that.
Error: FORWARD_NULL (CWE-476):
osinfo-db-tools-1.5.0/tools/osinfo-db-import.c:157: var_compare_op:
Comparing "*source_file" to null implies that "*source_file" might be
null.
osinfo-db-tools-1.5.0/tools/osinfo-db-import.c:181: var_deref_model:
Passing null pointer "*source_file" to "unlink", which dereferences it.
# 179| g_error_free(err);
# 180| if (ret != 0)
# 181|-> unlink(*source_file);
# 182|
# 183| return ret;
Error: CLANG_WARNING:
osinfo-db-tools-1.5.0/tools/osinfo-db-import.c:181:9: warning: Null
pointer passed as an argument to a 'nonnull' parameter
# unlink(*source_file);
# ^
Signed-off-by: Fabiano Fidêncio <fidencio at redhat.com>
---
tools/osinfo-db-import.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/osinfo-db-import.c b/tools/osinfo-db-import.c
index 920f71b..11e68ae 100644
--- a/tools/osinfo-db-import.c
+++ b/tools/osinfo-db-import.c
@@ -177,7 +177,7 @@ osinfo_db_import_download_file(GFile *file,
g_object_unref(out);
if (err != NULL)
g_error_free(err);
- if (ret != 0)
+ if (ret != 0 && *source_file != NULL)
unlink(*source_file);
return ret;
--
2.21.0
More information about the Libosinfo
mailing list