]> git.klezlab.it Git - klez/parrotsay-lite.git/commitdiff
oops, that's not how you copy strings... master
authorFederico klez Culloca <klez@klezlab.it>
Sun, 14 Jun 2026 11:16:26 +0000 (13:16 +0200)
committerFederico klez Culloca <klez@klezlab.it>
Sun, 14 Jun 2026 11:16:26 +0000 (13:16 +0200)
parrotsay.c

index 9f9c528e3ac75dba92af193fd7cc4c0521fa4c7c..c6c939ebd9e83ff8d0fe8e2d6890bd483941e85b 100644 (file)
@@ -69,7 +69,7 @@ void read_from_args(char** message_rows, int argc, char** argv) {
     for (int i = 1; i < argc; i++) {
         size_t message_rows_length = strlen(*message_rows) 
                                    + strlen(*(argv+i)) 
     for (int i = 1; i < argc; i++) {
         size_t message_rows_length = strlen(*message_rows) 
                                    + strlen(*(argv+i)) 
-                                   + (i == 1 ? 0 : 1);
+                                   + (i == 1 ? 1 : 2); // must include \0 and space
         char* tmp = realloc(*message_rows, message_rows_length);
         if (tmp == NULL) {
             fprintf(stderr, "Error: %s", strerror(errno));
         char* tmp = realloc(*message_rows, message_rows_length);
         if (tmp == NULL) {
             fprintf(stderr, "Error: %s", strerror(errno));
@@ -77,9 +77,9 @@ void read_from_args(char** message_rows, int argc, char** argv) {
         }
         *message_rows = tmp;
         if (i != 1) {
         }
         *message_rows = tmp;
         if (i != 1) {
-            strlcat(*message_rows, " ", message_rows_length + 1);
+            strlcat(*message_rows, " ", message_rows_length);
         }
         }
-        strlcat(*message_rows, *(argv + i), message_rows_length + 1);
+        strlcat(*message_rows, *(argv + i), message_rows_length);
     }
 }
 
     }
 }