Patch 7.2.362 (extra, after 7.2.352)
Problem:    Win64: Vim doesn't work when cross-compiled with MingW libraries.
Solution:   Instead of handling WM_NCCREATE, create wide text area window
            class if the parent window iw side. (Sergey Khorev)
Files:      src/gui_w32.c, src/gui_w48.c


*** ../vim-7.2.361/src/gui_w32.c        2009-12-24 16:11:24.000000000 +0100
--- src/gui_w32.c       2010-02-17 16:26:58.000000000 +0100
***************
*** 1329,1334 ****
--- 1329,1335 ----
      WNDCLASS wndclass;
  #ifdef FEAT_MBYTE
      const WCHAR szVimWndClassW[] = VIM_CLASSW;
+     const WCHAR szTextAreaClassW[] = L"VimTextArea";
      WNDCLASSW wndclassw;
  #endif
  #ifdef GLOBAL_IME
***************
*** 1479,1484 ****
--- 1480,1507 ----
  #endif
  
      /* Create the text area window */
+ #ifdef FEAT_MBYTE
+     if (wide_WindowProc)
+     {
+       if (GetClassInfoW(s_hinst, szTextAreaClassW, &wndclassw) == 0)
+       {
+           wndclassw.style = CS_OWNDC;
+           wndclassw.lpfnWndProc = _TextAreaWndProc;
+           wndclassw.cbClsExtra = 0;
+           wndclassw.cbWndExtra = 0;
+           wndclassw.hInstance = s_hinst;
+           wndclassw.hIcon = NULL;
+           wndclassw.hCursor = LoadCursor(NULL, IDC_ARROW);
+           wndclassw.hbrBackground = NULL;
+           wndclassw.lpszMenuName = NULL;
+           wndclassw.lpszClassName = szTextAreaClassW;
+ 
+           if (RegisterClassW(&wndclassw) == 0)
+               return FAIL;
+       }
+     }
+     else
+ #endif
      if (GetClassInfo(s_hinst, szTextAreaClass, &wndclass) == 0)
      {
        wndclass.style = CS_OWNDC;
*** ../vim-7.2.361/src/gui_w48.c        2010-02-03 12:23:16.000000000 +0100
--- src/gui_w48.c       2010-02-17 16:27:21.000000000 +0100
***************
*** 1084,1096 ****
        case WM_NOTIFY: Handle_WM_Notify(hwnd, (LPNMHDR)lParam);
            return TRUE;
  #endif
-       /* Workaround for the problem that MyWindowProc() returns FALSE on 64
-        * bit windows when cross-compiled using Mingw libraries. (Andy
-        * Kittner) */
-       case WM_NCCREATE:
-           MyWindowProc(hwnd, uMsg, wParam, lParam);
-           return TRUE;
- 
        default:
            return MyWindowProc(hwnd, uMsg, wParam, lParam);
      }
--- 1084,1089 ----
*** ../vim-7.2.361/src/version.c        2010-02-17 16:23:03.000000000 +0100
--- src/version.c       2010-02-17 16:30:52.000000000 +0100
***************
*** 683,684 ****
--- 683,686 ----
  {   /* Add new patch number below this line */
+ /**/
+     362,
  /**/

-- 
"Marriage is the process of finding out what kind of man your wife
would have preferred"

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui