aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-05-30 17:33:20 +0300
committerShlomo Hecht <shlomo@twine-s.com>2019-05-30 17:33:20 +0300
commitb525fbcad1ac8c7126caa82ec8458ffbb6284384 (patch)
tree61abe4c1610fc2e0b6af8e5f926d5624692df2fe /Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
parent405096b3d489f4ea7b50b1d5db7d32241251b8d7 (diff)
downloadTango-b525fbcad1ac8c7126caa82ec8458ffbb6284384.tar.gz
Tango-b525fbcad1ac8c7126caa82ec8458ffbb6284384.zip
Version 1.4.0.4: Improved memory handling, handles SW crash after a job failure
Diffstat (limited to 'Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c')
-rw-r--r--Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c b/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
index 6c0262f66..c424320ff 100644
--- a/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
+++ b/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
@@ -109,7 +109,7 @@ uint32_t FileUploadRequestFunc(MessageContainer* requestContainer)
}
else
{
- free (UploadFileHandle);
+ my_free (UploadFileHandle);
UploadFileHandle = 0;
}
@@ -172,7 +172,8 @@ uint32_t FileChunkUploadRequestFunc(MessageContainer* requestContainer)
{
REPORT_MSG (FileReceivedLength,"file upload ended successfully");
f_close(ReceivedFileHandle);
- free (UploadFileHandle);
+ my_free (UploadFileHandle);
+ UploadFileHandle = 0;
FileReceivedLength = 0;
FileDone = true;
}
@@ -182,7 +183,8 @@ uint32_t FileChunkUploadRequestFunc(MessageContainer* requestContainer)
{
REPORT_MSG (FileReceivedLength,"file upload too much data!");
f_close(ReceivedFileHandle);
- free (UploadFileHandle);
+ my_free (UploadFileHandle);
+ UploadFileHandle = 0;
FileReceivedLength = 0;
FileDone = true;
}
@@ -206,7 +208,7 @@ uint32_t FileChunkUploadRequestFunc(MessageContainer* requestContainer)
responseContainer.continuous = false;
uint8_t* container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
size_t container_size = message_container__pack(&responseContainer, container_buffer);
- my_free(request->buffer.data);
+ //my_free(request->buffer.data);
file_chunk_upload_request__free_unpacked(request,NULL);
my_free(responseContainer.data.data);
SendCharsWithType(container_buffer, container_size,MESSAGE_TYPE__FileChunkUploadResponse);
@@ -301,7 +303,7 @@ uint32_t FileChunkDownloadRequestFunc(MessageContainer* requestContainer)
{
REPORT_MSG (FileSentLength,"file download ended successfully");
f_close(SentFileHandle);
- free (DownloadFileHandle);
+ my_free (DownloadFileHandle);
FileSentLength = 0;
}
else
@@ -310,7 +312,7 @@ uint32_t FileChunkDownloadRequestFunc(MessageContainer* requestContainer)
{
REPORT_MSG (FileSentLength,"file download too much data!");
f_close(SentFileHandle);
- free (DownloadFileHandle);
+ my_free (DownloadFileHandle);
FileSentLength = 0;
}
}