Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Aug 2019 17:08:30 +0000 (UTC)
From:      Gordon Tetlow <gordon@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-releng@freebsd.org
Subject:   svn commit: r350642 - in releng: 11.2/contrib/llvm/projects/libunwind/src 12.0/contrib/llvm/projects/libunwind/src
Message-ID:  <201908061708.x76H8Upt037712@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gordon
Date: Tue Aug  6 17:08:30 2019
New Revision: 350642
URL: https://svnweb.freebsd.org/changeset/base/350642

Log:
  Fix incorrect exception handling.
  
  Approved by:	so
  Security:	FreeBSD-EN-19:15.libunwind

Modified:
  releng/11.2/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp
  releng/12.0/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp

Modified: releng/11.2/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp
==============================================================================
--- releng/11.2/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp	Tue Aug  6 17:07:43 2019	(r350641)
+++ releng/11.2/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp	Tue Aug  6 17:08:30 2019	(r350642)
@@ -68,7 +68,9 @@ void EHHeaderParser<A>::decodeEHHdr(A &addressSpace, p
   ehHdrInfo.eh_frame_ptr =
       addressSpace.getEncodedP(p, ehHdrEnd, eh_frame_ptr_enc, ehHdrStart);
   ehHdrInfo.fde_count =
-      addressSpace.getEncodedP(p, ehHdrEnd, fde_count_enc, ehHdrStart);
+      fde_count_enc == DW_EH_PE_omit
+          ? 0
+          : addressSpace.getEncodedP(p, ehHdrEnd, fde_count_enc, ehHdrStart);
   ehHdrInfo.table = p;
 }
 

Modified: releng/12.0/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp
==============================================================================
--- releng/12.0/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp	Tue Aug  6 17:07:43 2019	(r350641)
+++ releng/12.0/contrib/llvm/projects/libunwind/src/EHHeaderParser.hpp	Tue Aug  6 17:08:30 2019	(r350642)
@@ -68,7 +68,9 @@ void EHHeaderParser<A>::decodeEHHdr(A &addressSpace, p
   ehHdrInfo.eh_frame_ptr =
       addressSpace.getEncodedP(p, ehHdrEnd, eh_frame_ptr_enc, ehHdrStart);
   ehHdrInfo.fde_count =
-      addressSpace.getEncodedP(p, ehHdrEnd, fde_count_enc, ehHdrStart);
+      fde_count_enc == DW_EH_PE_omit
+          ? 0
+          : addressSpace.getEncodedP(p, ehHdrEnd, fde_count_enc, ehHdrStart);
   ehHdrInfo.table = p;
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201908061708.x76H8Upt037712>