Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Jun 2020 02:52:07 +0000 (UTC)
From:      Kyle Evans <kevans@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r361817 - in stable: 11/stand/lua 12/stand/lua
Message-ID:  <202006050252.0552q7w4009650@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kevans
Date: Fri Jun  5 02:52:07 2020
New Revision: 361817
URL: https://svnweb.freebsd.org/changeset/base/361817

Log:
  MFC r361709: lualoader: improve drawer error handling
  
  At least one user has landed in a scenario where logo files appear to be
  misnamed, and we failed to find them. Our fallback for missing logodefs is
  orb/orbbw, based on the color status. In a scenario where we can't locate
  the logos, though, this is not ideal. Add in one more layer of fallback
  to properly just don't draw any logo if the fan has been jam packed with
  foreign material.
  
  PR:		246046

Modified:
  stable/11/stand/lua/drawer.lua
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/stand/lua/drawer.lua
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/stand/lua/drawer.lua
==============================================================================
--- stable/11/stand/lua/drawer.lua	Fri Jun  5 02:21:46 2020	(r361816)
+++ stable/11/stand/lua/drawer.lua	Fri Jun  5 02:52:07 2020	(r361817)
@@ -258,6 +258,11 @@ local function drawlogo()
 		else
 			logodef = getLogodef(drawer.default_bw_logodef)
 		end
+
+		-- Something has gone terribly wrong.
+		if logodef == nil then
+			logodef = getLogodef(drawer.default_fallback_logodef)
+		end
 	end
 
 	if logodef ~= nil and logodef.graphic == none then
@@ -355,6 +360,9 @@ shift = default_shift
 drawer.default_brand = 'fbsd'
 drawer.default_color_logodef = 'orb'
 drawer.default_bw_logodef = 'orbbw'
+-- For when things go terribly wrong; this def should be present here in the
+-- drawer module in case it's a filesystem issue.
+drawer.default_fallback_logodef = 'none'
 
 function drawer.addBrand(name, def)
 	branddefs[name] = def



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202006050252.0552q7w4009650>