Patch 7.4.695
Problem:    Out-of-bounds read, dectected by Coverity.
Solution:   Remember the value of cmap for the first matching encoding.  Reset
            cmap to that value if first matching encoding is going to be used.
            (Eliseo Martínez)
Files:      src/hardcopy.c


*** ../vim-7.4.694/src/hardcopy.c       2015-03-31 13:33:00.797524914 +0200
--- src/hardcopy.c      2015-04-13 14:38:35.893079993 +0200
***************
*** 2513,2525 ****
--- 2513,2530 ----
      props = enc_canon_props(p_encoding);
      if (!(props & ENC_8BIT) && ((*p_pmcs != NUL) || !(props & ENC_UNICODE)))
      {
+       int cmap_first;
+ 
        p_mbenc_first = NULL;
        for (cmap = 0; cmap < (int)NUM_ELEMENTS(prt_ps_mbfonts); cmap++)
            if (prt_match_encoding((char *)p_encoding, &prt_ps_mbfonts[cmap],
                                                                    &p_mbenc))
            {
                if (p_mbenc_first == NULL)
+               {
                    p_mbenc_first = p_mbenc;
+                   cmap_first = cmap;
+               }
                if (prt_match_charset((char *)p_pmcs, &prt_ps_mbfonts[cmap],
                                                                   &p_mbchar))
                    break;
***************
*** 2527,2533 ****
--- 2532,2541 ----
  
        /* Use first encoding matched if no charset matched */
        if (p_mbchar == NULL && p_mbenc_first != NULL)
+       {
            p_mbenc = p_mbenc_first;
+           cmap = cmap_first;
+       }
      }
  
      prt_out_mbyte = (p_mbenc != NULL);
*** ../vim-7.4.694/src/version.c        2015-04-13 12:57:49.638724360 +0200
--- src/version.c       2015-04-13 14:40:35.539753218 +0200
***************
*** 743,744 ****
--- 743,746 ----
  {   /* Add new patch number below this line */
+ /**/
+     695,
  /**/

-- 
People who want to share their religious views with you
almost never want you to share yours with them.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui