]> git.proxmox.com Git - grub2.git/commitdiff
* grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
authorVladimir Serbinenko <phcoder@gmail.com>
Sun, 27 Oct 2013 12:34:46 +0000 (13:34 +0100)
committerVladimir Serbinenko <phcoder@gmail.com>
Sun, 27 Oct 2013 12:34:46 +0000 (13:34 +0100)
transform invalid unicode codepoints.

ChangeLog
grub-core/kern/misc.c

index e53bb88d2d0bd7834bcb85d99d712974b8b40d8a..4a8dab5c563344ff481c540aa87744b7c1a46673 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
+       transform invalid unicode codepoints.
+
 2013-10-21  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
index 431522e29a88d5916d6f5f71e0811a1d3a5a27e0..5af4582a0c7676291a84cdd41701dbb800537754 100644 (file)
@@ -947,21 +947,11 @@ grub_vsnprintf_real (char *str, grub_size_t max_len, const char *fmt0, va_list a
                shift = 12;
                mask = 0xe0;
              }
-           else if (code <= 0x1fffff)
+           else if (code <= 0x10ffff)
              {
                shift = 18;
                mask = 0xf0;
              }
-           else if (code <= 0x3ffffff)
-             {
-               shift = 24;
-               mask = 0xf8;
-             }
-           else if (code <= 0x7fffffff)
-             {
-               shift = 30;
-               mask = 0xfc;
-             }
            else
              {
                code = '?';