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