You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
2.1 KiB

From 002c7908388cea822217b6a907de419676d6e4b8 Mon Sep 17 00:00:00 2001
From: Trevor Woerner <trevor.woerner@linaro.org>
Date: Sat, 21 Jun 2014 20:26:47 +0200
Subject: [PATCH 083/237] * util/grub-gen-asciih.c (add_glyph): Fix
uninitialised variable.
---
ChangeLog | 4 ++++
util/grub-gen-asciih.c | 15 +++++++++------
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 2a94ad9..b552113 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-06-21 Trevor Woerner <trevor.woerner@linaro.org>
+
+ * util/grub-gen-asciih.c (add_glyph): Fix uninitialised variable.
+
2014-06-21 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/commands/verify.c (grub_pubkey_open): Trust procfs.
diff --git a/util/grub-gen-asciih.c b/util/grub-gen-asciih.c
index e01447a..e35dcb7 100644
--- a/util/grub-gen-asciih.c
+++ b/util/grub-gen-asciih.c
@@ -81,14 +81,14 @@ add_glyph (FT_UInt glyph_idx, FT_Face face,
err = FT_Load_Glyph (face, glyph_idx, flag);
if (err)
{
- printf ("Freetype Error %d loading glyph 0x%x for U+0x%x",
+ fprintf (stderr, "Freetype Error %d loading glyph 0x%x for U+0x%x",
err, glyph_idx, char_code);
if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs))
- printf (": %s\n", ft_errmsgs[err]);
+ fprintf (stderr, ": %s\n", ft_errmsgs[err]);
else
- printf ("\n");
- return;
+ fprintf (stderr, "\n");
+ exit (1);
}
glyph = face->glyph;
@@ -128,7 +128,6 @@ add_glyph (FT_UInt glyph_idx, FT_Face face,
static void
write_font_ascii_bitmap (FILE *file, FT_Face face)
{
- struct grub_glyph_info glyph;
int char_code;
fprintf (file, "/* THIS CHUNK OF BYTES IS AUTOMATICALLY GENERATED */\n");
@@ -138,10 +137,14 @@ write_font_ascii_bitmap (FILE *file, FT_Face face)
for (char_code = 0; char_code <= 0x7f; char_code++)
{
FT_UInt glyph_idx;
-
+ struct grub_glyph_info glyph;
+
glyph_idx = FT_Get_Char_Index (face, char_code);
if (!glyph_idx)
return;
+
+ memset (&glyph, 0, sizeof(glyph));
+
add_glyph (glyph_idx, face, char_code, &glyph);
if (glyph.width == 8 && glyph.height == 16
--
2.9.3