From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.devel Subject: Re: Crash with --enable-checking and some glyphs Date: Sat, 27 Nov 2021 21:28:33 +0000 Message-ID: <227d35a5bcbe91bfe96c@heytings.org> References: <87h7c1u0cg.fsf@gnus.org> <87wnkxskvn.fsf@gnus.org> <87zgpt63m3.fsf@gnus.org> <83mtlt8vil.fsf@gnu.org> <87v90h6271.fsf@gnus.org> <83lf1d8uyw.fsf@gnu.org> <87r1b561kn.fsf@gnus.org> <871r35ziyl.fsf@gnus.org> <87sfvlwkrc.fsf_-_@gnus.org> <87sfvlh1zo.fsf@gmail.com> <87h7c0flfk.fsf@gnus.org> <874k807166.fsf@gmail.com> <87wnkwb8q7.fsf@gnus.org> <87sfvkb85w.fsf@gnus.org> <83wnkw469i.fsf@gnu.org> <87ee739kjx.fsf@gnus.org> <83h7bz2i9f.fsf@gnu.org> <87mtlrt2ei.fsf@gnus.org> <838rxb2c8i.fsf@gnu.org> <87a6hrt0ti.fsf@gnus.org> <8335ni3mr4.fsf@gnu.org> <877dctsnhz.fsf@gnus.org> <83sfvhy6mv.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38170"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Lars Ingebrigtsen , rpluim@gmail.com, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Nov 27 22:29:30 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mr5GD-0009l3-PY for ged-emacs-devel@m.gmane-mx.org; Sat, 27 Nov 2021 22:29:30 +0100 Original-Received: from localhost ([::1]:58042 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mr5GC-0007sU-UV for ged-emacs-devel@m.gmane-mx.org; Sat, 27 Nov 2021 16:29:28 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:39068) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mr5FN-0006sv-Su for emacs-devel@gnu.org; Sat, 27 Nov 2021 16:28:38 -0500 Original-Received: from heytings.org ([95.142.160.155]:55716) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mr5FM-0004XS-7w; Sat, 27 Nov 2021 16:28:37 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20210101; t=1638048513; bh=fchVQxE4qOQCGnmeeM0fUjYtwxXFbJLm4uSceFmwYzU=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=U2qV9Ih7xOmeaOneBKb6gi1YInZxW2Qte2GE7CbJaa5lTHeJdJ3hlIwCMqW+iL6HU 4VXt9cZ01Ine3x+b5gW/BAH6iP0Ri0UzVkwlNwTnMnc1B/qrG4FuQEUt78AUuGUGFL CgoehfYn9XkBd/epvsuHEsMPk0KvBuL8QVlr7tS+At8ZW1wt4MfTTIAyk8w8ZtMRI0 twsG6utDDEPLjOr4w2pO63xGJqtGWvevLtJmjqdJdpEBp+S5Wd9RnU3GQ/gUvVWWXY BxDyO2Dh0SjLS8slmB91JKYLMmKUGmeUmNJEFPLRJsR3YeSsrrCH9cjzcOX+nmh8kx osgyIrskGUX7w== In-Reply-To: <83sfvhy6mv.fsf@gnu.org> Received-SPF: pass client-ip=95.142.160.155; envelope-from=gregory@heytings.org; helo=heytings.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:280353 Archived-At: Lars, could you check that md5sum /usr/share/fonts/X11/misc/hanglm24.pcf.gz = 819a5304502ef38ac01918a147310b69 ? >> And boff is 3 because of: >> >> boff = font->baseline_offset; >> if (font->vertical_centering) >> boff = VCENTER_BASELINE_OFFSET (font, it->f) - boff; >> >> (gdb) print font->vertical_centering >> $17 = true >> >> And we don't apply these sanity checks in this case: >> >> /* These limitations are enforced by an >> assertion near the end of this function. */ >> if (it->ascent < 0) >> it->ascent = 0; >> if (it->descent < 0) >> it->descent = 0; > > Right, I added a similar limitation, because I don't see what else could > we do in cases such as this one. I do wonder why others didn't see the > same problem in a very similar build on the same system. > I very much doubt that this is the root cause of this bug. I have the exact same libraries and compiler (and likely the same font), I use the exact same build options, and boff is never == 3 with that file, it is always == 0. For the piece of code above, with the ACE0 character I have: boff = font->baseline_offset; /* font->baseline_offset == 0 */ if (font->vertical_centering) /* font->vertical_centering == 1 */ boff = VCENTER_BASELINE_OFFSET (font, it->f) - boff; /* VCENTER_BASELINE_OFFSET(...) == 0 */