From nobody Sun Apr 16 21:10:18 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Q02rp5cWPz44k4j; Sun, 16 Apr 2023 21:10:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Q02rp4xq7z4NSJ; Sun, 16 Apr 2023 21:10:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681679418; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zG2NelG5+PjFEn9YvT0aVP94L7RIxHeYSDz6exKodLc=; b=xRBgbkuDvnqH/H/dKMQEcillBMqLC7FkTTzh+EHl1qF9wr+ETYT0Qlku4mkXjUKSinQRUL 0B+PbPitlgFHJr1sc2pNilLplMSzywNz0cvEW0I6ioo5mJLMjn4kpcra4cDK0hrA6krPrO cpREy619UmN1wuMiptr/YviQ+TWovzkViKjmqZPXKDJX6tGco1rad96e+lJlwMS6IPVwOE p0sp8wGmNDLfGfCFwVUzzO00pw1dkrSLvB1wrbV5SFb1CL4VifWgdc5CiD0R7/aY1qZ5PK DqZncbPubmx/maukJXL8bzGvBjrKH3MI8TMxLxE9+G35YSGnZhRIhCO5rwMUfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681679418; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zG2NelG5+PjFEn9YvT0aVP94L7RIxHeYSDz6exKodLc=; b=pVm1XuDNE3ikAWK3YzhhJ+EC2aw0A2EawrtgEke0ldNnL4XzwF8dbESGnG54gIvaZZk/Lq tP/ujR99HyUZsm75shn82bM7iKoZQ5unkkdnm61cbgSWAx7TmvgZ2hVOLv7r4C1l4tLtMY jd+4bYuKfg3CQYA4zIewUEK2HR0NggU1CjCJAOnfYt8ressAjejXhrB4zH93QcWKAWoQri o4PtJ3xVcUfO5loaBsNxMK7obXS5UeBRVxI+CSXkx5Pm805yJvRWUOPyY/3REdIQkRpb11 CDtbpeDQz1XpfZLmLA0STmHyRXwswe7QMhvmfHc30ycTM0s7XfnguEnZcDBFtw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681679418; a=rsa-sha256; cv=none; b=KUBqQf0b3G+hS/xDl4mVIcEjFzT5RipuiX/EVlTN8x2puICE2hwOe111Xgcsh6KBlwNTGa rzhz5TaWFH/QozYH1atgz0IajuvcmlCDxgpvN81krXsHkpwFEDlDzbaOkAfwfXA7pPeGa/ uwTG7EP1gOiU/jMCs8aMo/hJQ3eArdWYCp+i55dAx3bsbEfn0tHiRNtN+OIauciB38a28S JDsWjlvIeq7JAwoCpytprYpZs2zJ+MIq1Lb/sQcDVJuye2ZGF8LuRbA/cqVLn0CVlFtUwO gsYyDYjIoR6EMTVXr/i34dTyr2oHuaZrPmCNfyqaFEaZrGpZpXtFwATQS1ACfw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Q02rp3sBQz12kL; Sun, 16 Apr 2023 21:10:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33GLAIsn035490; Sun, 16 Apr 2023 21:10:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33GLAIxw035489; Sun, 16 Apr 2023 21:10:18 GMT (envelope-from git) Date: Sun, 16 Apr 2023 21:10:18 GMT Message-Id: <202304162110.33GLAIxw035489@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Christoph Moench-Tegeder Subject: git: 6ffeab7ede94 - main - www/firefox: fix fonts becoming transparent in some configurations List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cmt X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6ffeab7ede9450a397417f4ba6b878a793a47804 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by cmt: URL: https://cgit.FreeBSD.org/ports/commit/?id=6ffeab7ede9450a397417f4ba6b878a793a47804 commit 6ffeab7ede9450a397417f4ba6b878a793a47804 Author: Christoph Moench-Tegeder AuthorDate: 2023-04-16 21:06:47 +0000 Commit: Christoph Moench-Tegeder CommitDate: 2023-04-16 21:06:47 +0000 www/firefox: fix fonts becoming transparent in some configurations https://bugzilla.mozilla.org/show_bug.cgi?id=1827950 PR: 270695 --- www/firefox/Makefile | 1 + www/firefox/files/patch-bug1827950 | 51 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) diff --git a/www/firefox/Makefile b/www/firefox/Makefile index 9d2daf8d1b2b..6cd9cd0d5570 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -1,5 +1,6 @@ PORTNAME= firefox DISTVERSION= 112.0.1 +PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= www wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \ diff --git a/www/firefox/files/patch-bug1827950 b/www/firefox/files/patch-bug1827950 new file mode 100644 index 000000000000..d00147a7380e --- /dev/null +++ b/www/firefox/files/patch-bug1827950 @@ -0,0 +1,51 @@ +diff --git gfx/thebes/gfxFont.cpp gfx/thebes/gfxFont.cpp +--- gfx/thebes/gfxFont.cpp ++++ gfx/thebes/gfxFont.cpp +@@ -2467,11 +2467,19 @@ + fontParams.extraStrikes = 0; + } + + // Figure out the maximum extents for the font, accounting for synthetic + // oblique and bold. +- fontParams.fontExtents = GetFontEntry()->GetFontExtents(mFUnitsConvFactor); ++ if (mFUnitsConvFactor > 0.0) { ++ fontParams.fontExtents = GetFontEntry()->GetFontExtents(mFUnitsConvFactor); ++ } else { ++ // Was it not an sfnt? Maybe on Linux... use arbitrary huge extents, so we ++ // don't inadvertently clip stuff. A bit less efficient than true extents, ++ // but this should be extremely rare. ++ auto size = GetAdjustedSize(); ++ fontParams.fontExtents = Rect(-2 * size, -2 * size, 5 * size, 5 * size); ++ } + if (fontParams.obliqueSkew != 0.0f) { + gfx::Point p(fontParams.fontExtents.x, fontParams.fontExtents.y); + gfx::Matrix skew(1, 0, fontParams.obliqueSkew, 1, 0, 0); + fontParams.fontExtents = skew.TransformBounds(fontParams.fontExtents); + } +diff --git gfx/thebes/gfxFontEntry.cpp gfx/thebes/gfxFontEntry.cpp +--- gfx/thebes/gfxFontEntry.cpp ++++ gfx/thebes/gfxFontEntry.cpp +@@ -282,15 +282,18 @@ + uint32_t len; + const HeadTable* head = + reinterpret_cast(hb_blob_get_data(headTable, &len)); + if (len >= sizeof(HeadTable)) { + mUnitsPerEm = head->unitsPerEm; ++ if (int16_t(head->xMax) > int16_t(head->xMin) && ++ int16_t(head->yMax) > int16_t(head->yMin)) { ++ mXMin = head->xMin; ++ mYMin = head->yMin; ++ mXMax = head->xMax; ++ mYMax = head->yMax; ++ } + } +- mXMin = head->xMin; +- mYMin = head->yMin; +- mXMax = head->xMax; +- mYMax = head->yMax; + } + + // if we didn't find a usable 'head' table, or if the value was + // outside the valid range, record it as invalid + if (mUnitsPerEm < kMinUPEM || mUnitsPerEm > kMaxUPEM) { +