From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 56412 invoked by alias); 8 Oct 2018 22:04:39 -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 56393 invoked by uid 89); 8 Oct 2018 22:04:39 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.8 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:861, accommodate X-HELO: gateway32.websitewelcome.com Received: from gateway32.websitewelcome.com (HELO gateway32.websitewelcome.com) (192.185.145.189) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 08 Oct 2018 22:04:37 +0000 Received: from cm15.websitewelcome.com (cm15.websitewelcome.com [100.42.49.9]) by gateway32.websitewelcome.com (Postfix) with ESMTP id D44E8C699E for ; Mon, 8 Oct 2018 17:04:34 -0500 (CDT) Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with SMTP id 9ddcgzZCc8YaU9ddegRTF6; Mon, 08 Oct 2018 17:04:33 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=hHGEnxXmgGzWnNmu3tQc3kjceLX5qUR1Ou57M28h/bA=; b=TQ+zEaSXhVZ6X6Ofdiu1WZ44Qe AcscqOG9JVy5KoiJ+bo4dcEUHjA3B3YY9aeTLdD3Z2r6hRXmE6EmRN2xDbec/8HXw7935UzRkwmw+ YvDzmHJyoAJrFupTuoItlQ0JV; Received: from 97-122-190-66.hlrn.qwest.net ([97.122.190.66]:51468 helo=bapiya) by box5379.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from ) id 1g9ddb-00122J-61; Mon, 08 Oct 2018 17:04:27 -0500 From: Tom Tromey To: Simon Marchi Cc: Tom Tromey , gdb-patches@sourceware.org Subject: Re: [RFC 1/8] Change wrap buffering to use a std::string References: <20180906211303.11029-1-tom@tromey.com> <20180906211303.11029-2-tom@tromey.com> <9ac8cf66-040e-b11a-841b-4d378b256f8a@simark.ca> Date: Mon, 08 Oct 2018 22:04:00 -0000 In-Reply-To: <9ac8cf66-040e-b11a-841b-4d378b256f8a@simark.ca> (Simon Marchi's message of "Sat, 6 Oct 2018 11:19:18 -0400") Message-ID: <87h8hwccyd.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2018-10/txt/msg00198.txt.bz2 >>>>> "Simon" == Simon Marchi writes: >> Currently wrap buffering is implemented by allocating a string that is >> the same width as the window, and then writing characters into it. >> However, if gdb emits terminal escapes, then these could possibly >> overflow the buffer. >> >> To prevent this, change the wrap buffer to be a std::string and update >> the various uses. Simon> This looks like a good change to me, independently of this series. I think you Simon> should push it right away. FWIW I think this patch will have to change to accommodate Windows -- or at least be totally obsoleted by the needed change. My plan is to have a vector holding strings with their styling. This has to happen because styling on Windows is done via an API, not via an escape sequence. Tom