From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 53442 invoked by alias); 21 Oct 2017 08:26:21 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 52901 invoked by uid 89); 21 Oct 2017 08:26:21 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.1 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=49317 X-HELO: eggs.gnu.org Received: from eggs.gnu.org (HELO eggs.gnu.org) (208.118.235.92) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 21 Oct 2017 08:26:19 +0000 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e5p6l-0003Uq-7w for gdb-patches@sourceware.org; Sat, 21 Oct 2017 04:26:18 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:51390) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e5p6l-0003Ul-42; Sat, 21 Oct 2017 04:26:15 -0400 Received: from [176.228.60.248] (port=3470 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1e5p6k-0007TL-8S; Sat, 21 Oct 2017 04:26:14 -0400 Date: Sat, 21 Oct 2017 08:26:00 -0000 Message-Id: <83vaj8c3fj.fsf@gnu.org> From: Eli Zaretskii To: Simon Marchi CC: gdb@sourceware.org, gdb-patches@sourceware.org In-reply-to: (message from Simon Marchi on Mon, 9 Oct 2017 08:02:24 -0400) Subject: Re: Breakpoint commands in MI mode and "backtrace" Reply-to: Eli Zaretskii References: <8360bqt0im.fsf@gnu.org> <8a3d7153-7486-032f-aabc-6c3453f96459@simark.ca> <83shetsdg2.fsf@gnu.org> <83o9phs8zw.fsf@gnu.org> <83d15wsrvw.fsf@gnu.org> <83bmlgsqpm.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-IsSubscribed: yes X-SW-Source: 2017-10/txt/msg00691.txt.bz2 > Cc: gdb@sourceware.org > From: Simon Marchi > Date: Mon, 9 Oct 2017 08:02:24 -0400 > > Anyhow, can you try this patch here? It changes the uiout manually instead of > going through safe_execute_command. Since this worked for me, in GDB 8.0, can something similar be put in the current master, so the next GDB release will have this bug fixed? Thanks. > diff --git a/gdb/cli/cli-script.c b/gdb/cli/cli-script.c > index f1db954a69..b08954132b 100644 > --- a/gdb/cli/cli-script.c > +++ b/gdb/cli/cli-script.c > @@ -472,6 +472,8 @@ print_command_trace (const char *cmd) > printf_filtered ("%s\n", cmd); > } > > +static void restore_interp (void *arg); > + > enum command_control_type > execute_control_command (struct command_line *cmd) > { > @@ -491,8 +493,17 @@ execute_control_command (struct command_line *cmd) > { > /* A simple command, execute it and return. */ > std::string new_line = insert_user_defined_cmd_args (cmd->line); > + > + struct interp *old_interp = interp_set_temp (INTERP_CONSOLE); > + struct cleanup *old_chain = make_cleanup (restore_interp, old_interp); > + scoped_restore save_uiout > + = make_scoped_restore (¤t_uiout, > + current_interpreter ()->interp_ui_out ()); > + > execute_command (&new_line[0], 0); > ret = cmd->control_type; > + > + do_cleanups (old_chain); > break; > } > > >