From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Alan Third Newsgroups: gmane.emacs.bugs Subject: bug#33864: Acknowledgement (27.0.50; Display corruption with "small" font size when something is in the fringe) Date: Thu, 27 Dec 2018 16:30:11 +0000 Message-ID: <20181227163011.GA20599@breton.holly.idiocy.org> References: <20181227115925.GA3226@breton.holly.idiocy.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="45Z9DzgjV8m4Oswq" Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1545928155 20945 195.159.176.226 (27 Dec 2018 16:29:15 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 27 Dec 2018 16:29:15 +0000 (UTC) User-Agent: Mutt/1.10.1 (2018-07-13) Cc: 33864@debbugs.gnu.org To: Dale Sedivec Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Dec 27 17:29:11 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gcYX0-0005JN-TG for geb-bug-gnu-emacs@m.gmane.org; Thu, 27 Dec 2018 17:29:11 +0100 Original-Received: from localhost ([127.0.0.1]:53983 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gcYZ7-0005EH-L9 for geb-bug-gnu-emacs@m.gmane.org; Thu, 27 Dec 2018 11:31:21 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:47819) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gcYYt-0005E0-3H for bug-gnu-emacs@gnu.org; Thu, 27 Dec 2018 11:31:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gcYYo-00029a-DK for bug-gnu-emacs@gnu.org; Thu, 27 Dec 2018 11:31:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:52917) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gcYYn-00028c-R8 for bug-gnu-emacs@gnu.org; Thu, 27 Dec 2018 11:31:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gcYYn-0004j5-KB for bug-gnu-emacs@gnu.org; Thu, 27 Dec 2018 11:31:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Alan Third Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 27 Dec 2018 16:31:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33864 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 33864-submit@debbugs.gnu.org id=B33864.154592822418122 (code B ref 33864); Thu, 27 Dec 2018 16:31:01 +0000 Original-Received: (at 33864) by debbugs.gnu.org; 27 Dec 2018 16:30:24 +0000 Original-Received: from localhost ([127.0.0.1]:39476 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gcYYB-0004iE-NT for submit@debbugs.gnu.org; Thu, 27 Dec 2018 11:30:23 -0500 Original-Received: from mail-wr1-f45.google.com ([209.85.221.45]:40489) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gcYY9-0004hx-2e for 33864@debbugs.gnu.org; Thu, 27 Dec 2018 11:30:22 -0500 Original-Received: by mail-wr1-f45.google.com with SMTP id p4so18732482wrt.7 for <33864@debbugs.gnu.org>; Thu, 27 Dec 2018 08:30:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=36IUSZNByKuEMD0m2sMH7DeJg5uEJz5nE0JGlkxyqtY=; b=omE6GWn5k4l5NtCZwYO23CDIvK9pKsXGonqK+ApOsogwET+24g/1+30pPsiIjwiCCd dRx4lAZsv4WaIJwCGd/wi8N+FpVzmFBOKng/wkE/kyynV9x0GHIA7I7WIq/g45tWs/ye S300a8zkOYWQIbpEdFjWYAlv32GTkofQO2yPeWG3W0UL8TP93xY0Skl/BA0OgAbPqH6a EFvL8Gjfrlrt99S79WpBe9HFFTMoj0V1pQP3Fr2DB16i9kFvIYnAujPKpjTIZc+5otrb inb6LBm1G/Eu/oaC+DURGK317QVWfHie7bAV6YjW/FCVzj23OI7JO1CVf8Kjko09TKq8 EIPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition :content-transfer-encoding:in-reply-to:user-agent; bh=36IUSZNByKuEMD0m2sMH7DeJg5uEJz5nE0JGlkxyqtY=; b=aEXRt5dYVFARmkgoULD6Z5CjFaCGgdey71f3EkBI/6Gfz6bpIvGoyO8IjHVkB0Yri4 JslErCfSVfh3UzOlXAC7NzMR4Qj9DifN3Q+sCBJOnb0B2rl/XZF7UPJ25CMZKarKr8FU R9kF2Qhidkl9AuWa3Z5PA8wWJ+X8xDVG4hVLBCcCZOi5j1LXsinjexK2AVaYQf/9rv7a gz0Z8uemXzsBdCPgC/Ew1e1eh6f1kNGqclVOLti1qVZXTRNKNA84XC/azhCJbR9iYkQ1 5+mthqSJg7LrhUtpClm3I5V/Ha37+s0ReU4LK929MI0B0hvrwKrkvGcF5949ob/+AGS7 eqWA== X-Gm-Message-State: AJcUukeS4hGcXLykxovHZjg3ffYbltgie/N/4ybnyGP/N3bwxYKvZZfc uYtrSX+gqSiiOrY7qRhMAHe4/nj9MKo= X-Google-Smtp-Source: ALg8bN6o1z1f7ajH5pTEIIAonaH6o1HJrLdAKDWGwwOebbf34LCam1v9o87jrt6gP/dDXT0SDyGfHg== X-Received: by 2002:adf:9591:: with SMTP id p17mr23824110wrp.224.1545928215036; Thu, 27 Dec 2018 08:30:15 -0800 (PST) Original-Received: from breton.holly.idiocy.org (ip6-2001-08b0-03f8-8129-e94a-9bc1-c4f9-ac12.holly.idiocy.org. [2001:8b0:3f8:8129:e94a:9bc1:c4f9:ac12]) by smtp.gmail.com with ESMTPSA id a62sm25127464wmf.47.2018.12.27.08.30.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 27 Dec 2018 08:30:14 -0800 (PST) Content-Disposition: inline In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:153909 Archived-At: --45Z9DzgjV8m4Oswq Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit On Thu, Dec 27, 2018 at 09:45:57AM -0600, Dale Sedivec wrote: > You would probably know better than I would, but the only possible > relevant differences I can think of are: > > * I'm using a smaller font size > * I'm using a Retina (i.e. scaled) display > * I'm using macOS 10.13.6 These are all the same, but... > I am attaching the Elisp script I used to reproduce this problem while > bisecting, loaded like: > > nextstep/Emacs.app/Contents/MacOS/Emacs -Q --load repro.el This reproduces instantly, like you say. Thank you! It looks to me like the fringe background colour is being drawn right across the line, which makes me think that the calculation to work out what to blank in the fringe is going wrong. I think that what’s happened is I’ve misunderstood one of the NS rectangle function’s descriptions and assumed it did more error checking than it does. It looks like the fix is simply to check that the area that’s to be cleared is actually a legitimate rectangle. Patch attached. -- Alan Third --45Z9DzgjV8m4Oswq Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="0001-Fix-NS-fringe-bitmap-drawing-bug-bug-33864.patch" >From 3d67a10859d68934ff520eeaa660f5e3c55c2c5b Mon Sep 17 00:00:00 2001 From: Alan Third Date: Thu, 27 Dec 2018 16:23:32 +0000 Subject: [PATCH] Fix NS fringe bitmap drawing bug (bug#33864) * src/nsterm.m (ns_draw_fringe_bitmap): Check the rectangle to clear correctly. --- src/nsterm.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nsterm.m b/src/nsterm.m index 6c285f0abb..a624f62817 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -3062,7 +3062,7 @@ so some key presses (TAB) are swallowed by the system. */ /* Work out the rectangle we will need to clear. Because we're compositing rather than blitting, we need to clear the area under the image regardless of anything else. */ - if (!p->overlay_p) + if (p->bx >= 0 && !p->overlay_p) { clearRect = NSMakeRect (p->bx, p->by, p->nx, p->ny); clearRect = NSUnionRect (clearRect, imageRect); -- 2.19.1 --45Z9DzgjV8m4Oswq--