From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gerd =?UTF-8?Q?M=C3=B6llmann?= Newsgroups: gmane.emacs.bugs Subject: bug#68940: 29.2; Random crashes in face for char / font Date: Thu, 08 Feb 2024 11:35:46 +0100 Message-ID: References: <865xz1233w.fsf@gnu.org> <86wmrhznlq.fsf@gnu.org> <86sf25zgjx.fsf@gnu.org> <86jzngzc8d.fsf@gnu.org> <3w1geauywu-1@qs52p00im-qukt02101102.me.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28706"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: Eli Zaretskii , 68940@debbugs.gnu.org To: Robert Vojta Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Feb 08 11:37:17 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1rY1mN-0007Gs-KO for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 08 Feb 2024 11:37:16 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rY1lx-0007Of-D6; Thu, 08 Feb 2024 05:36:49 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rY1lw-0007OX-Lr for bug-gnu-emacs@gnu.org; Thu, 08 Feb 2024 05:36:48 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rY1lw-0004cr-Dg for bug-gnu-emacs@gnu.org; Thu, 08 Feb 2024 05:36:48 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rY1mA-0007vt-8O for bug-gnu-emacs@gnu.org; Thu, 08 Feb 2024 05:37:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Gerd =?UTF-8?Q?M=C3=B6llmann?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Feb 2024 10:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68940 X-GNU-PR-Package: emacs Original-Received: via spool by 68940-submit@debbugs.gnu.org id=B68940.170738857130428 (code B ref 68940); Thu, 08 Feb 2024 10:37:02 +0000 Original-Received: (at 68940) by debbugs.gnu.org; 8 Feb 2024 10:36:11 +0000 Original-Received: from localhost ([127.0.0.1]:59218 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rY1lL-0007uh-3c for submit@debbugs.gnu.org; Thu, 08 Feb 2024 05:36:11 -0500 Original-Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e]:59506) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rY1lI-0007uP-QG for 68940@debbugs.gnu.org; Thu, 08 Feb 2024 05:36:09 -0500 Original-Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-a383016f428so179628866b.2 for <68940@debbugs.gnu.org>; Thu, 08 Feb 2024 02:35:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1707388548; x=1707993348; darn=debbugs.gnu.org; h=mime-version:user-agent:message-id:date:references:in-reply-to :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=C+L7YkQb+yImBowGpFI3Q1oeCtGaOv2t80aMyIfRLI4=; b=NRSDF6pjsi+JPHhcnl0zOkQ0PI1e9FPmJmNCqjR+ic832kXrBQOrpoqxvkgriiKqE0 Gr0yrbDapozztJCFPaQoEWqa3oG7S/14fCW7FkyLAUoT9Giv18D7sv6rfZ1XLd9HAqhX qeCT5IWbVD0az8mFYtDArt2uncqbxENGiopRaRNhfy+UlOD1c5nC5zQVnVA/eM7MoKAE 5yh7qswW/lHptiQyRf+DtyUTA7VoidFIbLgvttX71wpMu9aBX0ehcBvjdE+dlzMYywqL Qvf9fyRY3ESeK+GqPgz31HHu+miruLA847r6RXpbK9jrfBporwGTkADIxysj8Uhsv9gf 55RQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707388548; x=1707993348; h=mime-version:user-agent:message-id:date:references:in-reply-to :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=C+L7YkQb+yImBowGpFI3Q1oeCtGaOv2t80aMyIfRLI4=; b=rPvhMPpoHl9UAaWo2YN6zLCGtLvrAjlvpNLqJgWeJJmT8kxAVhDRTlsA7iOqq1qyX4 OT8EeRPfJNG1x2343BdI+OhAK02uP/nJE0KqCrhW/0pinOwBMtJ8mTwaVlEHFGW751I7 cPC/x3G+D27Ay57sUoe2FkdBCxxGV1rgzMuupDyIFfn2u75s4TyqCKdG5Et1wo2kD3pI YWj/FtnZaRuXYzkVrdKX/auLZZ6TH1Gtzj+exl3xzARZOOH8HzLTcoOMzBRBi8k9Dc0S jfPNI5JLVZ+z68ModXpWVhdQ35WVC18QmnNNUbYadUsKytnts/UfAOJjf26KGzutqeFS 8VLQ== X-Forwarded-Encrypted: i=1; AJvYcCV486X4k1A2Wb0xs5cunwL7GAV57WwNpyqf9G6JnnomFiq6aDKwrpFVPqS2iy1lS18q6f2LH71ztvC/H90r0+Vd8fulCa0= X-Gm-Message-State: AOJu0Yz5NAcUOGSQ7qCIDFBv/ygbt4mTSYRtjW4SHDWFGkPzJJZcHmv8 mQJ4vOvmoUr9nGJZCsVArn5gSamCYDgTqoNwDznpalKYl6ub8PKnp7JDUgpH X-Google-Smtp-Source: AGHT+IFeTCoxTvsSY/SfQEbqF4u1IG+2B5PtAQrPgVLBo1pigvXJSmkCqNqTo5EBotUztQEZETwrPg== X-Received: by 2002:a17:906:704a:b0:a37:22a5:50d5 with SMTP id r10-20020a170906704a00b00a3722a550d5mr7187340ejj.54.1707388548467; Thu, 08 Feb 2024 02:35:48 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCW8qm9arlbe+T9ie3V3VHrcIyXG+HSC5LM3N28/OAhLCI+EosN+sYO8fSbw5LcU+Vw9a3vTo9E/UzKLNyEo7TdgRualKPs= Original-Received: from Pro.fritz.box (p4fe3a32a.dip0.t-ipconnect.de. [79.227.163.42]) by smtp.gmail.com with ESMTPSA id x27-20020a170906135b00b00a359afad88dsm1777771ejb.10.2024.02.08.02.35.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Feb 2024 02:35:47 -0800 (PST) In-Reply-To: <3w1geauywu-1@qs52p00im-qukt02101102.me.com> (Robert Vojta's message of "Thu, 08 Feb 2024 10:56:43 +0100") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:279616 Archived-At: Robert Vojta writes: >> ../../emacs/src/lisp.h:1314: Emacs fatal error: assertion failed: >> FIXNUMP (a) > Message-ID: > MIME-Version: 1.0 > Content-Type: text/plain > > Sorry, forgot to include the bt: > > frame #8: 0x000000010027c1f8 emacs`die(msg="FIXNUMP (a)", file="../../emacs/src/lisp.h", line=1314) at alloc.c:8062:3 > frame #9: 0x00000001003076b4 emacs`XFIXNUM(a=0x000000015b17036d) at lisp.h:1314:3 > frame #10: 0x0000000100307198 > emacs`font_style_to_value(prop=FONT_WEIGHT_INDEX, > val=0x000000015b17036d, noerror=true) at font.c:428:27 Above, the parameter val seems to be neither a symbol nor a fixnum, and that meads to an assertion in XFIXNUM. > frame #11: 0x0000000100310980 > emacs`font_select_entity(f=0x000000015b172040, > entities=0x0000000150ffef43, attrs=0x000000015ae06d60, > pixel_size=12, c=9207) at font.c:3160:5 And here, we see that val comes from a Lisp face FONT_SET_STYLE (prefer, FONT_WEIGHT_INDEX, attrs[LFACE_WEIGHT_INDEX]); which could mean the parameter attrs is bogus. > frame #12: 0x00000001003104d0 > emacs`font_find_for_lface(f=0x000000015b172040, > attrs=0x000000015ae06d60, spec=0x000000015b085a15, c=9207) at > font.c:3321:15 Which would mean paramter attrs above is bogus. > * frame #13: 0x00000001003eba14 > emacs`fontset_find_font(fontset=0x000000014b61c99d, c=9207, > face=0x000000015ae06d60, charset_id=-1, fallback=false) at > fontset.c:732:21 Which could mean the parameter face is bogus in the above. > frame #14: 0x00000001003e3490 > emacs`fontset_font(fontset=0x000000012c209205, c=9207, > face=0x000000015ae06d60, id=-1) at fontset.c:809:4 Same here... > frame #15: 0x00000001003e29a8 emacs`face_for_char(f=0x000000015b172040, face=0x000000015ae06d60, c=9207, pos=-1, object=0x0000000000000000) at fontset.c:1031:15 > frame #16: 0x000000010031995c emacs`FACE_FOR_CHAR(f=0x000000015b172040, face=0x000000015ae06d60, character=9207, pos=-1, object=0x0000000000000000) at dispextern.h:1950:10 > frame #17: 0x0000000100319658 emacs`Finternal_char_font(position=0x0000000000000000, ch=0x0000000000008fde) at font.c:4766:13 > > I will inspect the fontset, face, ... values in these frames later. Hm. I'm quite out of my comfort zone here, regarding fontsets and fonts, but it looks to me as if we're acting on a, for some reason, invalid face, which would come from face_id = FACE_FOR_CHAR (f, FACE_FROM_ID (f, face_id), c, pos, Qnil); in Finternal_char_font. Maybe one could take a look at *f->face_cache here?