From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1U76xI-0003FI-Lw for mharc-grub-devel@gnu.org; Sun, 17 Feb 2013 11:19:08 -0500 Received: from eggs.gnu.org ([208.118.235.92]:52469) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U76xF-0003EB-Tx for grub-devel@gnu.org; Sun, 17 Feb 2013 11:19:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U76xE-0003qo-9w for grub-devel@gnu.org; Sun, 17 Feb 2013 11:19:05 -0500 Received: from mail-lb0-f169.google.com ([209.85.217.169]:35163) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U76xD-0003qS-PH for grub-devel@gnu.org; Sun, 17 Feb 2013 11:19:04 -0500 Received: by mail-lb0-f169.google.com with SMTP id m4so3760912lbo.14 for ; Sun, 17 Feb 2013 08:19:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:date:from:to:subject:message-id:x-mailer:mime-version :content-type; bh=KJpr/uPiWpQFGYTUvr1ikLHkY//GawccpkwxmGJwHhg=; b=pk1988DO7tsfs0i5FjLCOx+Tmbb/vsd76qTrxgGyAPavgkYDEw2P1ufgQuMB0CYvfI chM+JcXIfcOK+N8yAgt8tMvTzbF4vYDzFEtQy6Sk3IdBXM+Su4gLuZ6UKwATqSOPLdhJ S0WDR8/Cwcn/Ffvxe0e/l0Jha28nKyW3y37tGYYayZyI2GEw9qN0KrFwcBuqnKUVXXq9 1lf+LPQxlSdsHXlk+QdCqAf2E1E2eaPq8EAzjXlDFZxjNFqHyhWLCYXMGiDA4Q9uDjJQ zr/clYhTJIoXPI1T4A5N279Xbf/8qy00N1x71hmmS9UlVaOQG4OjfV64kDIuhhKe5JwZ 28hw== X-Received: by 10.152.147.195 with SMTP id tm3mr7763593lab.40.1361114161794; Sun, 17 Feb 2013 07:16:01 -0800 (PST) Received: from opensuse.site (ppp91-78-198-46.pppoe.mtu-net.ru. [91.78.198.46]) by mx.google.com with ESMTPS id h7sm2347273lbd.11.2013.02.17.07.16.00 (version=SSLv3 cipher=RC4-SHA bits=128/128); Sun, 17 Feb 2013 07:16:00 -0800 (PST) Date: Sun, 17 Feb 2013 19:15:59 +0400 From: Andrey Borzenkov To: grub-devel@gnu.org Subject: [PATCH] fix entry editor screen screen layout corruption in trunk Message-ID: <20130217191559.1de3c574@opensuse.site> X-Mailer: Claws Mail 3.9.0 (GTK+ 2.24.10; x86_64-suse-linux-gnu) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/uIS7s0bNRMS+NxXK=ilWs.p" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 209.85.217.169 X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Feb 2013 16:19:07 -0000 --MP_/uIS7s0bNRMS+NxXK=ilWs.p Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline See screenshot for what I get using current trunk. I do not pretend to fully understand all this code so review is appreciated. So far it does fix both gfxterm and console cases for me. Patch follows. --- From: Andrey Borzenkov Subject: [PATCH] fix entry editor screen corruption Fixes the following issues after rev 7137 1. right margines were erased on wrapped lines (with contibuation char) 2. left margines were erased on continuation lines 3. max_lines was effectively ignored by gfxterm, so last line was printed outside of editor window, overwriting bottom border and probably beyond 4. menu_entry:update_screen() unconditionally padded last line with spaces, but print_ucs4_menu() would move to next screen position if line was wrapped. This caused bottom border to be partially overwritten with spaces. The patch moves line padding to term.c. It also makes behaviour consistent with print_ucs4_terminal which did padding itself. Signed-off-by: Andrey Borzenkov --- grub-core/normal/menu_entry.c | 10 ---------- grub-core/normal/term.c | 29 +++++++++++++++++++++++------ 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/grub-core/normal/menu_entry.c b/grub-core/normal/menu_entry.c index 7cd67f3..cc977b5 100644 --- a/grub-core/normal/menu_entry.c +++ b/grub-core/normal/menu_entry.c @@ -256,7 +256,6 @@ update_screen (struct screen *screen, struct per_term_screen *term_screen, if (i == region_start || linep == screen->lines + screen->line) { - int sp; grub_term_gotoxy (term_screen->term, GRUB_TERM_LEFT_BORDER_X + GRUB_TERM_MARGIN + 1, (y < 0 ? 0 : y) + GRUB_TERM_FIRST_ENTRY_Y); @@ -271,14 +270,9 @@ update_screen (struct screen *screen, struct per_term_screen *term_screen, term_screen->num_entries - ((y > 0) ? y : 0), '\\', *pos); - sp = grub_term_entry_width (term_screen->term) - - (*pos)[linep->len].x; - if (sp > 0) - grub_print_spaces (term_screen->term, sp); } else if (i > region_start && mode == ALL_LINES) { - int sp; grub_term_gotoxy (term_screen->term, GRUB_TERM_LEFT_BORDER_X + GRUB_TERM_MARGIN + 1, (y < 0 ? 0 : y) + GRUB_TERM_FIRST_ENTRY_Y); @@ -293,10 +287,6 @@ update_screen (struct screen *screen, struct per_term_screen *term_screen, term_screen->num_entries - ((y > 0) ? y : 0), '\\', *pos); - sp = grub_term_entry_width (term_screen->term) - - (*pos)[linep->len].x; - if (sp > 0) - grub_print_spaces (term_screen->term, sp); } y += get_logical_num_lines (linep, term_screen); if (y >= term_screen->num_entries) diff --git a/grub-core/normal/term.c b/grub-core/normal/term.c index dc03268..0290968 100644 --- a/grub-core/normal/term.c +++ b/grub-core/normal/term.c @@ -736,6 +736,8 @@ print_ucs4_terminal (const grub_uint32_t * str, continue; putcode_real (*ptr2, term, fixed_tab); } + if (contchar) + fill_margin (term, margin_right); } return dry_run ? lines : 0; } @@ -767,13 +769,22 @@ put_glyphs_terminal (const struct grub_unicode_glyph *visual, grub_ssize_t visual_len, int margin_left, int margin_right, struct grub_term_output *term, - struct term_state *state, int fixed_tab) + struct term_state *state, int fixed_tab, grub_uint32_t contchar) { const struct grub_unicode_glyph *visual_ptr; + int wasn = 0; + for (visual_ptr = visual; visual_ptr < visual + visual_len; visual_ptr++) { if (visual_ptr->base == '\n') - grub_print_spaces (term, margin_right); + { + wasn = 1; + if (contchar) + fill_margin (term, margin_right); + } + else + wasn = 0; + putglyph (visual_ptr, term, fixed_tab); if (visual_ptr->base == '\n') { @@ -786,10 +797,16 @@ put_glyphs_terminal (const struct grub_unicode_glyph *visual, return 1; } - grub_print_spaces (term, margin_left); + if (!contchar) + grub_print_spaces (term, margin_left); + else + grub_term_gotoxy (term, margin_left, + grub_term_getxy (term) & 0xff); } grub_free (visual_ptr->combining); } + if (!wasn && contchar) + fill_margin (term, margin_right); return 0; } @@ -826,7 +843,7 @@ print_backlog (struct grub_term_output *term, ret = put_glyphs_terminal (state->backlog_glyphs, state->backlog_len, margin_left, margin_right, term, state, - state->backlog_fixed_tab); + state->backlog_fixed_tab, 0); if (!ret) { grub_free (state->free); @@ -908,7 +925,7 @@ print_ucs4_real (const grub_uint32_t * str, { for (vptr = visual_show; max_lines && vptr < visual + visual_len; vptr++) - if (visual_show->base == '\n') + if (vptr->base == '\n') max_lines--; visual_len_show = vptr - visual_show; @@ -930,7 +947,7 @@ print_ucs4_real (const grub_uint32_t * str, { ret = put_glyphs_terminal (visual_show, visual_len_show, margin_left, contchar ? margin_right : 1, - term, state, fixed_tab); + term, state, fixed_tab, contchar); if (!ret) grub_free (visual); -- tg: (c235052..) u/fix-after-bidi (depends on: master) --MP_/uIS7s0bNRMS+NxXK=ilWs.p Content-Type: image/png Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=QEMU_006.png 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 QAdA1dkSZ7+8q+f7yu1V68uOqj93xpXmPXvHLE9kI4SoPt706uc7311Z7tPdR89pmJORdNGU/r6f 5GamBE2qrrHtlc923HbBSCHElKGF/Qsyyw/rfLRNX5cj3c45re/N54144cOtkn+122x/uHmGeTGW x8ji3GfvmH3L01/I1f2cO66v4TGWR3pywrVnDPl6m+aROC6c1N/zhKmCy6cP/GBNJac5YCyGJwXU OnNMkbex75VPNXSUmT2q919+ONsbY/1n2Z55D73/j0+2h/5413WnD/a7feZmqOqN9PpXu9s7Olu+ Lp8xMIr2wm0XjCjtlSn5p5vPH+5bWWie8YPy77t0jOSf0pLif3z5aSat952V5T/6y1c6vnjVrFI1 G9W/IIPTHDD497neX9FAzPGGIweONq7ccVjliXPhxOJHbpjsaVmrPt700L9WdTb6hHzeZaQkXNl1 +9xb3VCSnyGEyMtKUZNy7YmWj9fvv2BCsRBi7qSSJ97eoLNfjuK6lm89pNxRzCsvMzkvK2VIn+yg S8Y74u6YO+rev/o3HQ4uyrrl/OFBv36iuW31zupvy45ItvolJzrGl+aNL80L+nDidWcM+WT9/sBu bTfPGe4Zl0vB2l3Vq3ZV1za0eB9iyMlIys9KGVWSO7I4Z0ChdBD54kdbn3p3o44jZ+yAnnJpBh7h v/vPt5zpgMFhFlEWoCamGV+a53n/9ooyt9ut5sSZPKTAG2NVHTv5vT98criuyagz7gfnDvNEAweO Nr700dZHbpgihMjNSFKZ/qKV5Z4wKzM1cerQgmVbDhkdZYmFS3dpTbZfXvrVswddObNUocvX7FG9 8zOT/Xqz3TZnpHIL5rETLc9/sOXtFWXKHdj/9dmOxPi4S6YOuHXOCOUHFe+4cOQtT53Src1us106 dYDCV3YfPP6zl1fsPHBc8q9vLt/jiRfnzxo8d1Kxd3OcLtdvXl/3xrLd+o6cq2aWqlzyoin9n353 I/NdAgayd10qefHipfSaNqyX98b//qoKNV8pyE59/ObpPjHWp4frmo3KT5+e6deePtiTn7+8v/nw sc6YIzczWWUKq3fW1J9s7arwyNObk6BhmLZXZU3jb9749qYnP2uSH40szm6fParI91v98jJmj1J6 4HHbvmNXPfbhwqW7W9tdQfPQ2u5auHT3VY99uG3fMYU0Jw0u6F+Q6fvF0f1zFYZv2FxRe/3jn+w8 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 6ZEAAAAASUVORK5CYII= --MP_/uIS7s0bNRMS+NxXK=ilWs.p--