]> git.ipfire.org Git - people/sennis/libloc.git/commitdiff
12326 Refactor loc_stringpool_append function for null ptr increment. 12326
authorSimon <simon.ennis@ipfire.org>
Fri, 27 Mar 2020 14:16:44 +0000 (14:16 +0000)
committerSimon <simon.ennis@ipfire.org>
Fri, 27 Mar 2020 14:16:44 +0000 (14:16 +0000)
src/stringpool.c

index e43c4cb3a7fa84b00c449dc49c261fe895a27294..ecac0f66eb8696389ea38b8f2e0bfb236960064f 100644 (file)
@@ -224,11 +224,23 @@ static off_t loc_stringpool_append(struct loc_stringpool* pool, const char* stri
        off_t offset = loc_stringpool_get_offset(pool, pool->pos);
 
        // Copy string byte by byte
-       while (*string)
-               *pool->pos++ = *string++;
+       while (*string) {
+               if(pool->pos) {
+                   *pool->pos++ = *string++;
+               }
+               else {
+                   *pool->pos = *string++;
+                   pool->pos++;
+               }
+       }
 
        // Terminate the string
-       *pool->pos++ = '\0';
+       if(pool->pos) {
+           *pool->pos++ = '\0';
+       }
+       else {
+           *pool->pos = '\0';
+       }
 
        return offset;
 }