View Issue Details

IDProjectCategoryView StatusLast Update
0008012libmicrohttpdbuild systempublic2024-01-21 12:33
Reporterss Assigned ToChristian Grothoff Due Date
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product VersionGit master 
Summary0008012: Build failure with LTO
DescriptionWhen LTO is enabled, linking fails complaining about potentially uninitialized variables; this patch fixes it (diff against 8bb481f commit):

diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c
index f9892a55..e5dd1a45 100644
--- a/src/microhttpd/connection.c
+++ b/src/microhttpd/connection.c
@@ -653,7 +653,7 @@ MHD_connection_alloc_memory_ (struct MHD_Connection *connection,
 {
   struct MHD_Connection *const c = connection; /* a short alias */
   struct MemoryPool *const pool = c->pool; /* a short alias */
- size_t need_to_be_freed; /**< The required amount of additional free memory */
+ size_t need_to_be_freed = 0; /**< The required amount of additional free memory */
   void *res;
 
   res = MHD_pool_try_alloc (pool, size, &need_to_be_freed);
@@ -4468,7 +4468,7 @@ process_request_body (struct MHD_Connection *connection)
       { /* Need the parse the chunk size line */
         /** The number of found digits in the chunk size number */
         size_t num_dig;
- uint64_t chunk_size;
+ uint64_t chunk_size = 0;
         bool broken;
         bool overflow;
 
Steps To ReproduceHard to generate a minimal example reproducing this, but suggested patch is harmless - I hope you can apply it.
TagsNo tags attached.

Activities

Christian Grothoff

2024-01-21 12:29

manager   ~0020936

Fix committed to master branch.

Christian Grothoff

2024-01-21 12:30

manager   ~0020937

Should be fixed in 45aa83f1..32aa4d0d. (even though I could not reproduce, change seems harmless enough)

Issue History

Date ModifiedUsernameFieldChange
2023-12-17 18:59ssNew Issue
2024-01-21 12:29Christian Grothoff
2024-01-21 12:29Christian GrothoffNote Added: 0020936
2024-01-21 12:29Christian GrothoffAssigned To => Christian Grothoff
2024-01-21 12:29Christian GrothoffStatusnew => resolved
2024-01-21 12:29Christian GrothoffResolutionopen => fixed
2024-01-21 12:30Christian GrothoffFixed in Version => 0.9.77
2024-01-21 12:30Christian GrothoffNote Added: 0020937
2024-01-21 12:30Christian GrothoffProduct Version => Git master
2024-01-21 12:30Christian GrothoffTarget Version => 0.9.77
2024-01-21 12:33Christian GrothoffStatusresolved => closed