]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
memory leak in gas dwarf2dbg.c
authorAlan Modra <amodra@gmail.com>
Wed, 1 Jan 2025 12:20:29 +0000 (22:50 +1030)
committerAlan Modra <amodra@gmail.com>
Wed, 1 Jan 2025 12:20:29 +0000 (22:50 +1030)
Found when running the pr27355 testcase.

PR 27355
PR 27426
* dwarf2dbg.c (allocate_filename_to_slot): Update dirs_in_use.

gas/dwarf2dbg.c

index b84f54579494c543305b6287df9f4f9ba92ba896..2963e52958a30cfed2529bcdb699d87d902b6353 100644 (file)
@@ -883,6 +883,8 @@ allocate_filename_to_slot (const char *dirname,
                }
              
              dirs[files[num].dir] = xmemdup0 (dirname, strlen (dirname));
+             if (dirs_in_use <= files[num].dir)
+               dirs_in_use = files[num].dir + 1;
            }
            
          return true;
@@ -911,6 +913,8 @@ allocate_filename_to_slot (const char *dirname,
                    }
 
                  dirs[files[num].dir] = xmemdup0 (filename, file - filename);
+                 if (dirs_in_use <= files[num].dir)
+                   dirs_in_use = files[num].dir + 1;
                }
              return true;
            }