From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Noam Postavsky Newsgroups: gmane.emacs.bugs Subject: bug#27647: 26.0.50; Line numbers implemented natively disappear momentarily when frame out of focus Date: Thu, 09 Nov 2017 19:38:30 -0500 Message-ID: <87h8u33r3t.fsf@users.sourceforge.net> References: <83eftnitpj.fsf@gnu.org> <87inekjzy8.fsf@gmail.com> <87efp8jznq.fsf@gmail.com> <87shdo4150.fsf@users.sourceforge.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1510274353 2132 195.159.176.226 (10 Nov 2017 00:39:13 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 10 Nov 2017 00:39:13 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) Cc: 27647@debbugs.gnu.org, Alex To: Kaushal Modi Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Nov 10 01:39:09 2017 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 1eCxLg-0000Om-P2 for geb-bug-gnu-emacs@m.gmane.org; Fri, 10 Nov 2017 01:39:09 +0100 Original-Received: from localhost ([::1]:39618 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eCxLm-0004TA-Er for geb-bug-gnu-emacs@m.gmane.org; Thu, 09 Nov 2017 19:39:14 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44717) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eCxLd-0004T5-NF for bug-gnu-emacs@gnu.org; Thu, 09 Nov 2017 19:39:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eCxLa-0003qN-JP for bug-gnu-emacs@gnu.org; Thu, 09 Nov 2017 19:39:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:52455) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eCxLa-0003qC-EV for bug-gnu-emacs@gnu.org; Thu, 09 Nov 2017 19:39:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eCxLa-0002zt-7Q for bug-gnu-emacs@gnu.org; Thu, 09 Nov 2017 19:39:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Noam Postavsky Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 10 Nov 2017 00:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27647 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 27647-submit@debbugs.gnu.org id=B27647.151027432111492 (code B ref 27647); Fri, 10 Nov 2017 00:39:02 +0000 Original-Received: (at 27647) by debbugs.gnu.org; 10 Nov 2017 00:38:41 +0000 Original-Received: from localhost ([127.0.0.1]:32903 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCxLE-0002zI-VC for submit@debbugs.gnu.org; Thu, 09 Nov 2017 19:38:41 -0500 Original-Received: from mail-io0-f176.google.com ([209.85.223.176]:50258) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCxLC-0002z3-Ln for 27647@debbugs.gnu.org; Thu, 09 Nov 2017 19:38:39 -0500 Original-Received: by mail-io0-f176.google.com with SMTP id 97so11806210iok.7 for <27647@debbugs.gnu.org>; Thu, 09 Nov 2017 16:38:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=rf+BCkOTmebQGFWZp50tW5vKCvBsaTVgTzU+wY0oZkg=; b=bPgrLgyaJXR8uynrfddXYSGGEMrL15gUeQqydvG53vHExwWslUj93yzkO2offP/8/L N4M/RYYLDjZMK0wPssYKI2PIWeZ/hZ6wCNesYisYmIpFnBgYSSZ4AaQoZ6KMFn1z+ob5 kj5fhNPps9S1gJEviGynmdulpo8FPdRrxdbV/MrbGoG2FdZhsDMmodDHzHQMea5zZVWs jWT9yavnYSIILIbZfdEDy8ZsPBa6iGuQfRRFzJl8MKnID1lN+k1SocXgLopUhbjwKoyt SgyeHXr8RBfgHUMrwi1RHJcqZSlmz/1gFd0uzn+Xb6hrZozKIKbuoIOggaQo3tTnhYLK x3lg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version :content-transfer-encoding; bh=rf+BCkOTmebQGFWZp50tW5vKCvBsaTVgTzU+wY0oZkg=; b=PwZMYxAv458myqwxyDiPDH9KxE+sz5bs1286imzGLSGwt2h8EDz7Cf71evBnN3Tknw +4UuvTXqiIRTansY9Y4OHSzY09SsabBlwOk5KB9DUGE2RDXCTGhBdlaer38F08C6u+qD o8pPZ0kiJFtGwx7DZrc2AVklD2GG+TDeGsQEtKhG/mMI4Cls034tva7TZE4Bh89F9sOc bNmo+RqhPyM1KtWqKHcjJfdBE0IBH4d7IjzueDc82HD9/6VK6ffWNr0j/Dstf51ep71o hIOEGf+kGaB0qlslgennWjDglven3zGdCvRC1U6V8zrnK5EQR8/DKdNKoYAN43Wo5XeW 5LnA== X-Gm-Message-State: AJaThX7jZQKUSpsIK6V/RSm2Dk+9o9QO2FpSanJxTcKfYTja7v39JAeH rkW3UQqq8ALbAV7rO81/q80= X-Google-Smtp-Source: AGs4zMZqlxV24llLLxq6kPdkcR44kRAyL/3hAlIfMKNocyzUsatVt6TCYx3vcbQduGIgi3jEbKRS4w== X-Received: by 10.107.114.25 with SMTP id n25mr2870357ioc.84.1510274313009; Thu, 09 Nov 2017 16:38:33 -0800 (PST) Original-Received: from zebian ([45.2.119.34]) by smtp.googlemail.com with ESMTPSA id l11sm4031546ioi.39.2017.11.09.16.38.31 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 09 Nov 2017 16:38:32 -0800 (PST) In-Reply-To: (Kaushal Modi's message of "Thu, 09 Nov 2017 13:34:27 +0000") 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:139703 Archived-At: Kaushal Modi writes: > Thanks for spending time to debug this and come up with that crucial > fix. Did any of the within-emacs debug tactics help you figure this > out? Or was it putting breakpoints and catching them in gdb? Or did > you go the final hard way, and review the code manually? So glad you asked, now I can relive the glory of the hunt :D The first thing I tried was the 'watch Vdisplay_line_numbers', but this gave me no hits except for some spurious stuff related to buffer-local variables; after changing to (setq-default display-line-numbers t) I got no hits at all. So it was fairly clear that the problem lay below the lisp level. Then I considered putting a breakpoint into the display code, which is a bit tricky because I needed to drag the mouse to trigger the problem, but if a breakpoint is hit before that Emacs is frozen and can't register the mouse drag. I tried to reduce the recipe to some lisp code to be evaluated based on mouse-drag-and-drop-region, but I didn't manage to come up with something that worked. Then I looked a bit through the display code to figure if a breakpoint conditioned on mouse dragging could work, and I noticed the should_produce_line_number function, so I just put a breakpoint on every place which returned false. Bang, success! Except I then had to check the values of WINDOW_FRAME (it->w) to make sure I hadn't actually hit the case where the code *correctly* skips line numbers for tooltips. A quick grep for tip_frame soon turned up x_hide_tooltip which had the comment that explained what was going on. > Also thanks to everyone who helped figure out a recipe, which is > equally important :).=C2=A0 Most definitely, I could not have done anything without a simple way to reproduce the problem.