|
|
24fce8 |
From 8d81aeffcb1c2f9706dfe625a2f9f5e61f8a5c63 Mon Sep 17 00:00:00 2001
|
|
|
24fce8 |
From: Robert Marshall <rmarshall@redhat.com>
|
|
|
24fce8 |
Date: Tue, 14 Mar 2017 15:20:53 -0400
|
|
|
24fce8 |
Subject: [PATCH 42/55] Fix --info for s390x/s390 (#1285601)
|
|
|
24fce8 |
|
|
|
24fce8 |
The --info flag for grubby on s390/s390x always returned (null). Fixed
|
|
|
24fce8 |
codepath to use extractTitle where necessary and get the actual title.
|
|
|
24fce8 |
|
|
|
24fce8 |
Related: rhbz#1285601
|
|
|
24fce8 |
---
|
|
|
24fce8 |
grubby.c | 15 +++++++++++----
|
|
|
24fce8 |
1 file changed, 11 insertions(+), 4 deletions(-)
|
|
|
24fce8 |
|
|
|
24fce8 |
diff --git a/grubby.c b/grubby.c
|
|
|
24fce8 |
index 974b81c7864..9bf051dfed4 100644
|
|
|
24fce8 |
--- a/grubby.c
|
|
|
24fce8 |
+++ b/grubby.c
|
|
|
24fce8 |
@@ -2684,7 +2684,7 @@ void setFallbackImage(struct grubConfig *config, int hasNew)
|
|
|
24fce8 |
}
|
|
|
24fce8 |
}
|
|
|
24fce8 |
|
|
|
24fce8 |
-void displayEntry(struct singleEntry *entry, const char *prefix, int index)
|
|
|
24fce8 |
+void displayEntry(struct grubConfig *config, struct singleEntry *entry, const char *prefix, int index)
|
|
|
24fce8 |
{
|
|
|
24fce8 |
struct singleLine *line;
|
|
|
24fce8 |
char *root = NULL;
|
|
|
24fce8 |
@@ -2780,7 +2780,14 @@ void displayEntry(struct singleEntry *entry, const char *prefix, int index)
|
|
|
24fce8 |
|
|
|
24fce8 |
line = getLineByType(LT_TITLE, entry->lines);
|
|
|
24fce8 |
if (line) {
|
|
|
24fce8 |
- printf("title=%s\n", line->elements[1].item);
|
|
|
24fce8 |
+ char *entryTitle;
|
|
|
24fce8 |
+ /* if we can extractTitle, then it's a zipl config and
|
|
|
24fce8 |
+ * if not then we go ahead with what's existed prior */
|
|
|
24fce8 |
+ entryTitle = extractTitle(config, line);
|
|
|
24fce8 |
+ if (!entryTitle) {
|
|
|
24fce8 |
+ entryTitle=line->elements[1].item;
|
|
|
24fce8 |
+ }
|
|
|
24fce8 |
+ printf("title=%s\n", entryTitle);
|
|
|
24fce8 |
} else {
|
|
|
24fce8 |
char *title;
|
|
|
24fce8 |
line = getLineByType(LT_MENUENTRY, entry->lines);
|
|
|
24fce8 |
@@ -3196,11 +3203,11 @@ int displayInfo(struct grubConfig *config, char *kernel, const char *prefix)
|
|
|
24fce8 |
printf("lba\n");
|
|
|
24fce8 |
}
|
|
|
24fce8 |
|
|
|
24fce8 |
- displayEntry(entry, prefix, i);
|
|
|
24fce8 |
+ displayEntry(config, entry, prefix, i);
|
|
|
24fce8 |
|
|
|
24fce8 |
i++;
|
|
|
24fce8 |
while ((entry = findEntryByPath(config, kernel, prefix, &i))) {
|
|
|
24fce8 |
- displayEntry(entry, prefix, i);
|
|
|
24fce8 |
+ displayEntry(config, entry, prefix, i);
|
|
|
24fce8 |
i++;
|
|
|
24fce8 |
}
|
|
|
24fce8 |
|
|
|
24fce8 |
--
|
|
|
24fce8 |
2.17.1
|
|
|
24fce8 |
|