+2015-06-08 Mark Wielaard <mjw@redhat.com>
+
+ * dwarf_getsrclines.c (read_srclines): Initialize dirarray early.
+
2015-06-06 Mark Wielaard <mjw@redhat.com>
* dwarf_getsrclines.c (read_srclines): Initialize filelist early.
#define MAX_STACK_FILES (MAX_STACK_ALLOC / 4)
#define MAX_STACK_DIRS (MAX_STACK_ALLOC / 16)
+ struct dirlist
+ {
+ const char *dir;
+ size_t len;
+ };
+ struct dirlist dirstack[MAX_STACK_DIRS];
+ struct dirlist *dirarray = dirstack;
+
if (unlikely (linep + 4 > lineendp))
{
invalid_data:
/* First comes the list of directories. Add the compilation
directory first since the index zero is used for it. */
- struct dirlist
- {
- const char *dir;
- size_t len;
- } comp_dir_elem =
+ struct dirlist comp_dir_elem =
{
.dir = comp_dir,
.len = comp_dir ? strlen (comp_dir) : 0,
}
/* Arrange the list in array form. */
- struct dirlist dirstack[MAX_STACK_DIRS];
- struct dirlist *dirarray;
- if (ndirlist < MAX_STACK_DIRS)
- dirarray = dirstack;
- else
+ if (ndirlist >= MAX_STACK_DIRS)
{
dirarray = (struct dirlist *) malloc (ndirlist * sizeof (*dirarray));
if (unlikely (dirarray == NULL))