reopen 398421
thanks

I'm afraid it's not fixed yet!  (at least, not all the 64-bit issues)

Now it doesn't segfault right away, but segfaults are still very common
when processing real nsi files.

How to reproduce:

  svn co -r 44882 svn://svn.debian.org/d-i/people/rmh/win32-loader
  cd win32-loader
  # disable some dependencies (patch attached)
  patch -p0 < /tmp/disable.diff
  # see below
  touch debian.exe
  makensis dil.nsi

Notes:
  - It doesn't segfault when debian.exe does not exist prior to running.
  - If you remove all the LoadLanguageFile lines, it won't segfault either.

Given the current state of this package wrt 64-bit support, maybe it'd be
a good idea to ship the i386 version only.  After all, for a developer it's
not a big problem to use a chroot for building her installers.

-- 
Robert Millan

My spam trap is [EMAIL PROTECTED]  Note: this address is only intended
for spam harvesters.  Writing to it will get you added to my black list.
Index: dil.nsi
===================================================================
--- dil.nsi	(revision 44882)
+++ dil.nsi	(working copy)
@@ -28,7 +28,6 @@
 
 !addplugindir cpuid
 !include LogicLib.nsh
-!include checkspacefree.nsh
 
 ; First is default
 LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf"
@@ -172,25 +171,6 @@
   StrCpy $INSTDIR "$c\debian"
   SetOutPath $INSTDIR
 
-  ; we need 3 GiB to install debian
-  ; FIXME: maybe we should ask whether user wants dual boot or nuking windoze completely first
-  StrCpy $0 3145728 ; == 3 GiB
-  StrCpy $1 $c
-  Call CheckSpaceFunc
-  IntCmp $2 1 +2
-  MessageBox MB_OK "You do not seem to have enough free disk space in drive $c.  For a complete \
-desktop install, it is recommended that you have at least 3 GB of free disk.  If you already have a \
-separate disk or partition to install Debian, or if you plan to replace Windows completely, you can \
-safely ignore this warning."
-
-  ; and we refuse to start the installer with less than 30 MiB
-  StrCpy $0 30720 ; == 30 MiB
-  StrCpy $1 $c
-  Call CheckSpaceFunc
-  IntCmp $2 1 +3
-  MessageBox MB_OK "Error: not enough free disk space.  Aborting install."
-  Quit
-
   ; Write the uninstall keys for Windows
   WriteUninstaller "$INSTDIR\Uninstall.exe"
   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Debian-Installer Loader" "DisplayName" "Debian-Installer Loader"
@@ -208,9 +188,8 @@
 FunctionEnd
 
 Section "Debian-Installer Loader"
-  test64::get_arch
   Var /GLOBAL arch
-  StrCpy $arch $0
+  StrCpy $arch "amd64"
 
   Var /GLOBAL fellow_hacker
   ${If} $arch == "i386"
@@ -246,8 +225,6 @@
     Quit
   ${EndIf}
 
-  File /oname=$c\grldr "grub\grldr"
-  File /oname=$c\grub "grub\grub"
   ${If} $gtk == "gtk/"
     File /oname=$c\menu.lst "grub\gtk-menu.lst"
   ${Else}

Reply via email to