abfd->start_address = section->vma + header.main_offset;
end:
- if (loaderbuf != NULL)
- free (loaderbuf);
+ free (loaderbuf);
return 0;
error:
- if (loaderbuf != NULL)
- free (loaderbuf);
+ free (loaderbuf);
return -1;
}
return 0;
}
-static const bfd_target *
+static bfd_cleanup
bfd_pef_object_p (bfd *abfd)
{
bfd_pef_header header;
if (bfd_pef_scan (abfd, &header, mdata))
goto wrong;
- return abfd->xvec;
+ return _bfd_no_cleanup;
wrong:
bfd_set_error (bfd_error_wrong_format);
goto end;
end:
- if (libraries != NULL)
- free (libraries);
- if (imports != NULL)
- free (imports);
+ free (libraries);
+ free (imports);
*nsym = count;
return 0;
error:
- if (libraries != NULL)
- free (libraries);
- if (imports != NULL)
- free (imports);
+ free (libraries);
+ free (imports);
*nsym = count;
return -1;
}
csym[count] = NULL;
end:
- if (codebuf != NULL)
- free (codebuf);
-
- if (loaderbuf != NULL)
- free (loaderbuf);
-
+ free (codebuf);
+ free (loaderbuf);
return count;
}
return 0;
}
-static const bfd_target *
+static bfd_cleanup
bfd_pef_xlib_object_p (bfd *abfd)
{
bfd_pef_xlib_header header;
return NULL;
}
- return abfd->xvec;
+ return _bfd_no_cleanup;
}
const bfd_target pef_xlib_vec =