To: [email protected]
Subject: Patch 6.3a.012 (extra)
Fcc: outbox
From: Bram Moolenaar <[email protected]>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------

Patch 6.3a.012 (extra)
Problem:    On Windows 98 the installer doesn't work, don't even get the "I
           agree" button.  The check for the path ending in "vim" makes the
           browse dialog hard to use.  The default path when no previous Vim
           is installed is "c:\vim" instead of "c:\Program Files\Vim".
Solution:   Remove the background gradient command.  Change the
           .onVerifyInstDir function to a leave function for the directory
           page.  Don't let the install program default to c:\vim when no
           path could be found.
Files:      nsis/gvim.nsi, src/dosinst.c


*** ../vim-6.3a.011/nsis/gvim.nsi       Fri May  7 10:59:26 2004
--- nsis/gvim.nsi       Wed May 12 14:15:36 2004
***************
*** 42,48 ****
 #DisabledBitmap icons\disabled.bmp
 UninstallText "This will uninstall Vim ${VER_MAJOR}.${VER_MINOR} from your system."
 UninstallIcon icons\vim_uninst_16c.ico
! BGGradient 004000 008200 FFFFFF
 LicenseText "You should read the following before installing:"
 LicenseData ${VIMRT}\doc\uganda.nsis.txt

--- 42,51 ----
 #DisabledBitmap icons\disabled.bmp
 UninstallText "This will uninstall Vim ${VER_MAJOR}.${VER_MINOR} from your system."
 UninstallIcon icons\vim_uninst_16c.ico
!
! # On NSIS 2 using the BGGradient causes trouble on Windows 98, in combination
! # with the BringToFront.
! # BGGradient 004000 008200 FFFFFF
 LicenseText "You should read the following before installing:"
 LicenseData ${VIMRT}\doc\uganda.nsis.txt

***************
*** 50,56 ****
   !packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
 !endif

! # This adds '\vim' to the user choice automagically.
 InstallDir "$PROGRAMFILES\Vim"

 # Types of installs we can perform:
--- 53,60 ----
   !packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
 !endif

! # This adds '\vim' to the user choice automagically.  The actual value is
! # obtained below with ReadINIStr.
 InstallDir "$PROGRAMFILES\Vim"

 # Types of installs we can perform:
***************
*** 60,65 ****
--- 64,77 ----

 SilentInstall normal

+ # These are the pages we use
+ Page license
+ Page components
+ Page directory "" "" CheckInstallDir
+ Page instfiles
+ UninstPage uninstConfirm
+ UninstPage instfiles
+
 ##########################################################
 # Functions

***************
*** 85,91 ****
   ReadINIStr $INSTDIR $TEMP\vimini.ini vimini dir
   Delete $TEMP\vimini.ini

!   # If ReadINIStr failed for some reason, use default dir.
   StrCmp $INSTDIR "" 0 IniOK
   StrCpy $INSTDIR "$PROGRAMFILES\Vim"
   IniOK:
--- 97,103 ----
   ReadINIStr $INSTDIR $TEMP\vimini.ini vimini dir
   Delete $TEMP\vimini.ini

!   # If ReadINIStr failed or did not find a path: use the default dir.
   StrCmp $INSTDIR "" 0 IniOK
   StrCpy $INSTDIR "$PROGRAMFILES\Vim"
   IniOK:
***************
*** 114,124 ****
   NoCancelAbort:
 FunctionEnd

! # Only enable the "Install" button if the install directory ends in "vim".
! Function .onVerifyInstDir
   StrCpy $0 $INSTDIR 3 -3
   StrCmp $0 "vim" PathGood
!       Abort
   PathGood:
 FunctionEnd

--- 126,138 ----
   NoCancelAbort:
 FunctionEnd

! # We only accept the directory if it ends in "vim".  Using .onVerifyInstDir has
! # the disadvantage that the browse dialog is difficult to use.
! Function CheckInstallDir
   StrCpy $0 $INSTDIR 3 -3
   StrCmp $0 "vim" PathGood
!     MessageBox MB_OK "The path must end in 'vim'."
!     Abort
   PathGood:
 FunctionEnd

*** ../vim-6.3a.011/src/dosinst.c       Fri May  7 10:59:40 2004
--- src/dosinst.c       Wed May 12 12:58:09 2004
***************
*** 130,135 ****
--- 130,136 ----
     "colors",
     "compiler",
     "doc",
+     "ftdetect",
     "ftplugin",
     "indent",
     "keymap",
***************
*** 412,418 ****
           if (default_vim_dir != NULL)
               vim = default_vim_dir;
           else
!               vim = "C:\\Vim";
       }
     }

--- 413,421 ----
           if (default_vim_dir != NULL)
               vim = default_vim_dir;
           else
!               /* Let NSIS know there is no default, it should use
!                * $PROGRAMFIlES. */
!               vim = "";
       }
     }

*** ../vim-6.3a.011/src/version.c       Wed May 12 14:12:34 2004
--- src/version.c       Wed May 12 14:14:02 2004
***************
*** 643,644 ****
--- 643,646 ----
 {   /* Add new patch number below this line */
+ /**/
+     12,
 /**/

--
hundred-and-one symptoms of being an internet addict:
263. You have more e-mail addresses than shorts.

/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        Sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
\\\  Buy at Amazon and help AIDS victims -- http://ICCF.nl/click1.html ///