summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/dlt/dlt_filetransfer.h2
-rw-r--r--src/lib/dlt_filetransfer.c6
2 files changed, 8 insertions, 0 deletions
diff --git a/include/dlt/dlt_filetransfer.h b/include/dlt/dlt_filetransfer.h
index 728dfbb..5404d1a 100644
--- a/include/dlt/dlt_filetransfer.h
+++ b/include/dlt/dlt_filetransfer.h
@@ -52,6 +52,8 @@
#define DLT_FILETRANSFER_ERROR_INFO_ABOUT -700
/* ! Error code for dlt_user_log_file_packagesCount */
#define DLT_FILETRANSFER_ERROR_PACKAGE_COUNT -800
+/* ! Error code for failed get serial number */
+#define DLT_FILETRANSFER_FILE_SERIAL_NUMBER -900
/* !Transfer the complete file as several dlt logs. */
diff --git a/src/lib/dlt_filetransfer.c b/src/lib/dlt_filetransfer.c
index 7508790..081893b 100644
--- a/src/lib/dlt_filetransfer.c
+++ b/src/lib/dlt_filetransfer.c
@@ -462,6 +462,7 @@ int dlt_user_log_file_header_alias(DltContext *fileContext, const char *filename
DLT_STRING(
"dlt_user_log_file_header_alias, Error getting serial number of file:"),
DLT_STRING(filename));
+ return DLT_FILETRANSFER_FILE_SERIAL_NUMBER;
}
uint32_t fsize = getFilesize(filename, &ok);
@@ -633,6 +634,8 @@ int dlt_user_log_file_data(DltContext *fileContext,
DLT_LOG(*fileContext, DLT_LOG_ERROR,
DLT_STRING("failed to get FileSerialNumber for: "),
DLT_STRING(filename));
+ fclose (file);
+ return DLT_FILETRANSFER_FILE_SERIAL_NUMBER;
}
DLT_LOG(*fileContext, DLT_LOG_INFO,
@@ -661,6 +664,8 @@ int dlt_user_log_file_data(DltContext *fileContext,
DLT_LOG(*fileContext, DLT_LOG_ERROR,
DLT_STRING("failed to get FileSerialNumber for: "),
DLT_STRING(filename));
+ fclose(file);
+ return DLT_FILETRANSFER_FILE_SERIAL_NUMBER;
}
DLT_LOG(*fileContext, DLT_LOG_INFO,
@@ -705,6 +710,7 @@ int dlt_user_log_file_end(DltContext *fileContext, const char *filename, int del
DLT_LOG(*fileContext, DLT_LOG_ERROR,
DLT_STRING("failed to get FileSerialNumber for: "),
DLT_STRING(filename));
+ return DLT_FILETRANSFER_FILE_SERIAL_NUMBER;
}
DLT_LOG(*fileContext, DLT_LOG_INFO,