diff --git a/programs/cmp_io.c b/programs/cmp_io.c
index 32eb9967aebdcbaf3a8124cf5ac34ccb8524bf1a..acf9bbc538346dd5f525dae8534889caff251fb2 100644
--- a/programs/cmp_io.c
+++ b/programs/cmp_io.c
@@ -1373,9 +1373,8 @@ ssize_t read_file8(const char *file_name, uint8_t *buf, uint32_t buf_size, int f
 	if (file_size < 0)
 		goto fail;
 	if (file_size == 0) {
-		fprintf(stderr, "%s: %s: Warning: The file is empty.\n", PROGRAM_NAME, file_name);
-		fclose(fp);
-		return 0;
+		fprintf(stderr, "%s: %s: Error: The file is empty.\n", PROGRAM_NAME, file_name);
+		goto fail;
 	}
 	if ((unsigned long)file_size < buf_size) {
 		fprintf(stderr, "%s: %s: Error: The files do not contain enough data.\n", PROGRAM_NAME, file_name);
@@ -1474,6 +1473,7 @@ ssize_t read_file_data(const char *file_name, enum cmp_type cmp_type,
 
 	if (err)
 		return -1;
+
 	return size;
 }
 
diff --git a/test/cmp_tool/cmp_tool_integration_test.py b/test/cmp_tool/cmp_tool_integration_test.py
index e0e3fbe7afe1f4399dd4b1185e7d3347c3b6e24c..9ffe5ab10edd93ec73920b5eb8ea63c900d53932 100755
--- a/test/cmp_tool/cmp_tool_integration_test.py
+++ b/test/cmp_tool/cmp_tool_integration_test.py
@@ -923,7 +923,7 @@ def test_empty_file():
         assert(stdout == CMP_START_STR_CMP +
                "Importing configuration file %s ... DONE\n" % (cfg_file_name) +
                "Importing data file %s ... FAILED\n" % (data_file_name))
-        assert(stderr == "cmp_tool: %s: Warning: The file is empty.\n" % (data_file_name))
+        assert(stderr == "cmp_tool: %s: Error: The file is empty.\n" % (data_file_name))
         assert(returncode == EXIT_FAILURE)
 
     finally: