diff options
author | Howard Hinnant <hhinnant@apple.com> | 2011-12-01 00:08:59 +0000 |
---|---|---|
committer | Howard Hinnant <hhinnant@apple.com> | 2011-12-01 00:08:59 +0000 |
commit | dc82cca6bfd1c117556d718e71a7f6cbf65032fb (patch) | |
tree | 97272a72334cf3a7c8847f1851a3c9c4f59dcc3e /libcxxabi/src/cxa_demangle.cpp | |
parent | 1da6f4b43539629a81d8fdb4119bb97ba49a530c (diff) | |
download | bcm5719-llvm-dc82cca6bfd1c117556d718e71a7f6cbf65032fb.tar.gz bcm5719-llvm-dc82cca6bfd1c117556d718e71a7f6cbf65032fb.zip |
Updated heuristic regulating small string buffer
llvm-svn: 145543
Diffstat (limited to 'libcxxabi/src/cxa_demangle.cpp')
-rw-r--r-- | libcxxabi/src/cxa_demangle.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libcxxabi/src/cxa_demangle.cpp b/libcxxabi/src/cxa_demangle.cpp index 745093a219c..9af59dd36ee 100644 --- a/libcxxabi/src/cxa_demangle.cpp +++ b/libcxxabi/src/cxa_demangle.cpp @@ -14952,7 +14952,10 @@ printf("\n"); #endif const size_t bs = buf == NULL ? 0 : *n; ptrdiff_t sm = dmg_tree.__mangled_name_end_ - dmg_tree.__mangled_name_begin_; - ptrdiff_t est = sm + 50 * (dmg_tree.__node_end_ - dmg_tree.__node_begin_); + ptrdiff_t est = sm + 60 * ( + (dmg_tree.__node_end_ - dmg_tree.__node_begin_) + + (dmg_tree.__sub_end_ - dmg_tree.__sub_begin_) + + (dmg_tree.__t_end_ - dmg_tree.__t_begin_)); const unsigned N = 4096; char tmp[N]; ptrdiff_t s; |