[PATCH] D39185: [llvm-dwarfdump] - Fix array out of bounds access crash.

Rafael Avila de Espindola via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 24 08:13:33 PDT 2017


George Rimar via Phabricator <reviews at reviews.llvm.org> writes:

> +DWARFDie DWARFUnit::getFirstChild(const DWARFDebugInfoEntry *Die) {
> +  if (!Die->hasChildren())
> +    return DWARFDie();
> +
> +  // We do not want access out of bounds when parsing corrupted debug data.
> +  size_t I = getDIEIndex(Die) + 1;
> +  if (I >= DieArray.size())
> +    return DWARFDie();
> +  return DWARFDie(this, &DieArray[I]);
> +}
> +

We don't have to signal error by returning Expected? If for some reason
we know that an error will always be reported, LGTM.

Cheers,
Rafael


More information about the llvm-commits mailing list