[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#507372: cdebconf-newt-udeb: does not show enough choices for long descriptions



Package: cdebconf-newt-udeb
Severity: minor
Tags: patch

On Mon, Nov 24, 2008 at 09:12:58PM +0100, Ferenc Wagner wrote:
> I've pulled the netboot Xen variant and did a paravirtual
> installation.  It went all right, but I noticed a mysterious empty box
> on the APT setup screen: see http://apt.niif.hu/apt-config.png above
> the <Continue> button.  Is that maybe a degenerated scrollbar, where
> volatile is hiding?  It isn't included in sources.list after
> installation.  I can't test it until tomorrow, but it's unfortunate
> either way...

Indeed, the minimum size requirement for select/multiselect questions
was not computed maximum number of lines that could be used for the
description.

The attached patch fix this issue.  I have run an installation through
the end without any problem with the patch applied.

Cheers,
-- 
Jérémy Bobbio                        .''`. 
lunar@debian.org                    : :Ⓐ  :  # apt-get install anarchism
                                    `. `'` 
                                      `-   
diff --git a/packages/cdebconf/src/modules/frontend/newt/newt.c b/packages/cdebconf/src/modules/frontend/newt/newt.c
index 71dd5c3..4137ff7 100644
--- a/packages/cdebconf/src/modules/frontend/newt/newt.c
+++ b/packages/cdebconf/src/modules/frontend/newt/newt.c
@@ -118,6 +118,7 @@ struct newtColors newtAltColorPalette = {
 typedef int (newt_handler)(struct frontend *obj, struct question *q);
 
 static void newt_progress_stop(struct frontend *obj);
+static char *get_full_description(struct frontend *obj, struct question *q);
 
 #include "cdebconf_newt.h"
 
@@ -255,11 +256,11 @@ min_window_height(struct frontend *obj, struct question *q, int win_width)
 {
     int height = 3;
     char *type = q->template->type;
-    char *q_ext_text;
+    char *full_description;
 
-    q_ext_text = q_get_extended_description(obj, q);
-    if (q_ext_text != NULL)
-        height = cdebconf_newt_get_text_height(q_ext_text, win_width) + 1;
+    full_description = get_full_description(obj, q);
+    if (full_description != NULL)
+        height = cdebconf_newt_get_text_height(full_description, win_width) + 1;
     if (strcmp(type, "multiselect") == 0 || strcmp(type, "select") == 0)
         height += 4; // at least three lines for choices + blank line
     else if (strcmp(type, "string") == 0 || strcmp(type, "password") == 0)

Attachment: signature.asc
Description: Digital signature


Reply to: