]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
change corret mem pointer for open stream
authorBastian Dehn <hhaalo@arcor.de>
Sun, 5 Jan 2025 11:18:03 +0000 (12:18 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 5 Jan 2025 11:18:03 +0000 (12:18 +0100)
src/kds_s2000w_client.c

index cfd167ec7068fa8d4a29b20de8cd99716c6015d4..5bce98ab3ae94fcadeaf819e2d4540543763a6d8 100644 (file)
@@ -127,9 +127,9 @@ int kds_s2000w_client_open_session(response* resp)
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        char* body = malloc(sizeof(char) * MAX_STR_BUFFER_LENGTH);
@@ -146,7 +146,7 @@ int kds_s2000w_client_open_session(response* resp)
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -156,6 +156,8 @@ int kds_s2000w_client_open_session(response* resp)
        body = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -228,9 +230,9 @@ int kds_s2000w_client_status_session(int64_t sessionid, response* resp)
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
@@ -243,7 +245,7 @@ int kds_s2000w_client_status_session(int64_t sessionid, response* resp)
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -251,6 +253,8 @@ int kds_s2000w_client_status_session(int64_t sessionid, response* resp)
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -283,9 +287,9 @@ int kds_s2000w_client_start_scan(int64_t sessionid, response* resp)
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_POST, 1L);
@@ -299,7 +303,7 @@ int kds_s2000w_client_start_scan(int64_t sessionid, response* resp)
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -307,6 +311,8 @@ int kds_s2000w_client_start_scan(int64_t sessionid, response* resp)
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -339,9 +345,9 @@ int kds_s2000w_client_stop_scan(int64_t sessionid, response* resp)
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_POST, 1L);
@@ -355,7 +361,7 @@ int kds_s2000w_client_stop_scan(int64_t sessionid, response* resp)
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -363,6 +369,8 @@ int kds_s2000w_client_stop_scan(int64_t sessionid, response* resp)
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -398,9 +406,9 @@ int kds_s2000w_client_get_image(int64_t sessionid, int img_number, response* res
        headers = curl_slist_append(headers, ACCEPT_IMAGE_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
@@ -413,7 +421,7 @@ int kds_s2000w_client_get_image(int64_t sessionid, int img_number, response* res
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -421,6 +429,8 @@ int kds_s2000w_client_get_image(int64_t sessionid, int img_number, response* res
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -458,9 +468,9 @@ int kds_s2000w_client_delete_image(int64_t sessionid, int img_number, response*
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "DELETE");
@@ -473,7 +483,7 @@ int kds_s2000w_client_delete_image(int64_t sessionid, int img_number, response*
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -481,6 +491,8 @@ int kds_s2000w_client_delete_image(int64_t sessionid, int img_number, response*
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -509,9 +521,9 @@ int kds_s2000w_client_get_capabilities(response* resp)
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
@@ -524,7 +536,7 @@ int kds_s2000w_client_get_capabilities(response* resp)
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -532,6 +544,8 @@ int kds_s2000w_client_get_capabilities(response* resp)
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);
@@ -562,9 +576,9 @@ int kds_s2000w_client_get_option(int64_t sessionid, response* resp)
        headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-       char* mem = malloc(sizeof(char));
+       char** mem = malloc(sizeof(char*));
        size_t* sizeloc = malloc(sizeof(size_t));
-       FILE* stream = open_memstream(&mem, sizeloc);
+       FILE* stream = open_memstream(mem, sizeloc);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
 
        curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
@@ -577,7 +591,7 @@ int kds_s2000w_client_get_option(int64_t sessionid, response* resp)
        _kds_s2000w_client_print_error_result(result);
 
        fclose(stream);
-       _kds_s2000w_client_stream_to_response(mem, resp, sizeloc);
+       _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
 
        curl_url_cleanup(url_handler);
        url_handler = NULL;
@@ -585,6 +599,8 @@ int kds_s2000w_client_get_option(int64_t sessionid, response* resp)
        headers = NULL;
        curl_free(url);
        url = NULL;
+       free(*mem);
+       *mem = NULL;
        free(mem);
        mem = NULL;
        free(sizeloc);