diff --git a/src/restart.c b/src/restart.c
index 6344e10e2480134959e18a76a2b6d2244531baec..6eb37877b8cf66226755c9b32815300479ce4c02 100644
--- a/src/restart.c
+++ b/src/restart.c
@@ -220,7 +220,10 @@ void restart_read_blocks(void *ptr, size_t size, size_t nblocks, FILE *stream,
             errstr, head.len, nblocks * size);
 
     /* Return label, if required. */
-    if (label != NULL) strncpy(label, head.label, LABLEN);
+    if (label != NULL) {
+      head.label[LABLEN] = '\0';
+      strncpy(label, head.label, LABLEN+1);
+    }
 
     nread = fread(ptr, size, nblocks, stream);
     if (nread != nblocks)
diff --git a/src/units.c b/src/units.c
index 6d070c9c8ebdf56dff53b9dfeecc73d68fb6b4b6..6152d7f42f9a409bea9d057862c04d0ae9fb6a75 100644
--- a/src/units.c
+++ b/src/units.c
@@ -485,7 +485,7 @@ float units_general_a_factor(const struct unit_system* us,
 void units_general_cgs_conversion_string(char* buffer,
                                          const struct unit_system* us,
                                          const float baseUnitsExponants[5]) {
-  char temp[14];
+  char temp[20];
   const double a_exp = units_general_a_factor(us, baseUnitsExponants);
   const double h_exp = units_general_h_factor(us, baseUnitsExponants);
 
@@ -518,7 +518,7 @@ void units_general_cgs_conversion_string(char* buffer,
     sprintf(temp, "h^%d ", (int)h_exp);
   else
     sprintf(temp, "h^%7.4f ", h_exp);
-  strncat(buffer, temp, 12);
+  strcat(buffer, temp);
 
   /* Add conversion units */
   for (int i = 0; i < 5; ++i)
@@ -536,11 +536,11 @@ void units_general_cgs_conversion_string(char* buffer,
         sprintf(temp, "%s^%7.4f ",
                 units_get_base_unit_internal_symbol((enum base_units)i),
                 baseUnitsExponants[i]);
-      strncat(buffer, temp, 12);
+      strcat(buffer, temp);
     }
 
   /* Add CGS units */
-  strncat(buffer, " [ ", 3);
+  strcat(buffer, " [ ");
 
   for (int i = 0; i < 5; ++i) {
     if (baseUnitsExponants[i] != 0) {
@@ -557,11 +557,11 @@ void units_general_cgs_conversion_string(char* buffer,
         sprintf(temp, "%s^%7.4f ",
                 units_get_base_unit_cgs_symbol((enum base_units)i),
                 baseUnitsExponants[i]);
-      strncat(buffer, temp, 12);
+      strcat(buffer, temp);
     }
   }
 
-  strncat(buffer, "]", 2);
+  strcat(buffer, "]");
 }
 
 /**