From 4af5fe0b593f5d79aee8c54f6bc1542b1deed87e Mon Sep 17 00:00:00 2001 From: nealsid Date: Mon, 23 Feb 2009 09:28:29 +0000 Subject: Fix build breaks on Solaris using Sun Studio. Written by Ginn Chen & Eagle.Lu@ R=nealsid (although I don't have a Solaris machine to build on, & these changes look localized to Sun-only builds) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@314 4c0a9323-5329-0410-9bdc-e9ce6186880e --- src/common/solaris/dump_symbols.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/common/solaris') diff --git a/src/common/solaris/dump_symbols.cc b/src/common/solaris/dump_symbols.cc index a0697ff9..816d744c 100644 --- a/src/common/solaris/dump_symbols.cc +++ b/src/common/solaris/dump_symbols.cc @@ -176,7 +176,9 @@ inline void RecalculateOffset(struct slist* cur_list, char *stabstr) { // Demangle using demangle library on Solaris. std::string Demangle(const char *mangled) { int status = 0; + std::string str(mangled); char *demangled = (char *)malloc(demangleLen); + if (!demangled) { fprintf(stderr, "no enough memory.\n"); goto out; @@ -188,12 +190,11 @@ std::string Demangle(const char *mangled) { goto out; } - std::string str(demangled); + str = demangled; free(demangled); - return str; out: - return std::string(mangled); + return str; } bool WriteFormat(int fd, const char *fmt, ...) { -- cgit v1.2.1