diff options
author | Daniel Weber <37300320+danielweber2018@users.noreply.github.com> | 2022-12-01 04:51:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-01 10:51:36 +0700 |
commit | 4857ffca487d551564dfee41d1ad89f2db9ac1af (patch) | |
tree | a156570f974b03f1b0b27651755267b806e9848e /src | |
parent | ed8354ff0255061222e35b81a9cc156ec3b056ae (diff) | |
download | DLT-daemon-4857ffca487d551564dfee41d1ad89f2db9ac1af.tar.gz |
filetransfer: fix filesize divisible by blocksize case (#383)
If the file size is divisible by the package size
don't send one empty FLDA.
Also we send the correct number of FLDAs too.
Signed-off-by: Daniel Weber <daniel.w.weber@mercedes-benz.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/dlt_filetransfer.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/lib/dlt_filetransfer.c b/src/lib/dlt_filetransfer.c index fd8c5e3..3c71e68 100644 --- a/src/lib/dlt_filetransfer.c +++ b/src/lib/dlt_filetransfer.c @@ -657,6 +657,13 @@ int dlt_user_log_file_data(DltContext *fileContext, if (checkUserBufferForFreeSpace() > 0) { pkgNumber++; readBytes = fread(buffer, sizeof(char), BUFFER_SIZE, file); + + if (readBytes == 0) { + // If the file size is divisible by the package size don't send + // one empty FLDA. Also we send the correct number of FLDAs too. + break; + } + int ok; uint32_t fserial = getFileSerialNumber(filename, &ok); |