summaryrefslogtreecommitdiff
path: root/src/importer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/importer.cpp')
-rw-r--r--src/importer.cpp20
1 files changed, 8 insertions, 12 deletions
diff --git a/src/importer.cpp b/src/importer.cpp
index 8b5cc5c..23960b1 100644
--- a/src/importer.cpp
+++ b/src/importer.cpp
@@ -14,21 +14,17 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-#define _CRT_SECURE_NO_WARNINGS
-
-#include <fstream>
-#include <iostream>
-#include <string>
#include <threads.h>
#define CPPHTTPLIB_OPENSSL_SUPPORT
#include "httplib.h"
#include "logger.hpp"
-#include "importer.hpp"
#include "strops.hpp"
-#include "administration_reader.hpp"
+#include "memops.hpp"
#include "locales.hpp"
+#include "importer.hpp"
#include "file_templates.hpp"
+#include "administration_reader.hpp"
extern importer::ai_provider_impl _chatgpt_api_provider;
extern importer::ai_provider_impl _deepseek_api_provider;
@@ -62,7 +58,7 @@ static int _ai_document_to_invoice_t(void *arg) {
request->status = importer::status::IMPORT_QUERYING;
size_t query_buffer_len = 50000;
- char* template_buffer = (char*)malloc(query_buffer_len);
+ char* template_buffer = (char*)memops::alloc(query_buffer_len);
memset(template_buffer, 0, query_buffer_len);
strncpy(template_buffer, file_template::peppol_invoice_template, query_buffer_len);
@@ -120,7 +116,7 @@ static int _ai_document_to_invoice_t(void *arg) {
// Set customer or supplier depending on incomming or outgoing.
contact my_info = administration::company_info_get();
- memcpy(&inv.customer, &my_info, sizeof(contact));
+ memops::copy(&inv.customer, &my_info, sizeof(contact));
strops::copy(inv.customer.id, MY_COMPANY_ID, MAX_LEN_ID);
// Project and cost centers cannot be interpreted from file so are set to 0.
@@ -140,8 +136,8 @@ static int _ai_document_to_invoice_t(void *arg) {
inv.delivered_at = inv.issued_at;
}
- free(template_buffer);
- free(response);
+ memops::unalloc(template_buffer);
+ memops::unalloc(response);
request->status = importer::status::IMPORT_DONE;
request->result = administration::invoice_create_copy(&inv);
@@ -150,7 +146,7 @@ static int _ai_document_to_invoice_t(void *arg) {
importer::invoice_request* importer::ai_document_to_invoice(char* file_path)
{
- importer::invoice_request* result = (importer::invoice_request*)malloc(sizeof(importer::invoice_request));
+ importer::invoice_request* result = (importer::invoice_request*)memops::alloc(sizeof(importer::invoice_request));
result->started_at = time(NULL);
result->error = I_ERR_SUCCESS;
result->status = importer::status::IMPORT_STARTING;