This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[review v4] Introduce thread-safe way to handle SIGSEGV


Pedro Alves has posted comments on this change.

Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/171
......................................................................


Patch Set 4:

(1 comment)

| --- gdb/cp-support.c
| +++ gdb/cp-support.c
| @@ -1602,7 +1592,13 @@ #endif
| -
| -	      error_reported = 1;
| -	    }
| -
| -	  result = NULL;
| -	}
| +	  /* If there was a failure, we can't report it here, because
| +	     we might be in a background thread.  Instead, arrange for
| +	     the reporting to happen on the main thread.  */
| +          std::string copy = name;

PS4, Line 1595:

> The copy is needed here because `name` is a `const char *` and
> it isn't guaranteed to live long enough.

Ah, missed that.  Thanks for the clarification.

| +          run_on_main_thread ([=] ()
| +            {
| +              report_failed_demangle (copy.c_str (), core_dump_allowed,
| +                                      crash_signal);
| +            });
| +
| +          result = NULL;
| +        }
|      }

-- 
Gerrit-Project: binutils-gdb
Gerrit-Branch: master
Gerrit-Change-Id: Ic832bbb033b64744e4b44f14b41db7e4168ce427
Gerrit-Change-Number: 171
Gerrit-PatchSet: 4
Gerrit-Owner: Tom Tromey <tromey@sourceware.org>
Gerrit-Reviewer: Pedro Alves <palves@redhat.com>
Gerrit-Reviewer: Tom Tromey <tromey@sourceware.org>
Gerrit-Comment-Date: Tue, 26 Nov 2019 16:23:49 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Pedro Alves <palves@redhat.com>
Comment-In-Reply-To: Tom Tromey <tromey@sourceware.org>
Gerrit-MessageType: comment


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]