wok rev 18779

syslinux/isohybrid.exe: fix config md5
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri Jan 01 19:26:32 2016 +0100 (2016-01-01)
parents d2513bef6240
children ec7b15533c2d
files syslinux/stuff/iso2exe/iso2exe.c
line diff
     1.1 --- a/syslinux/stuff/iso2exe/iso2exe.c	Fri Jan 01 16:02:21 2016 +0100
     1.2 +++ b/syslinux/stuff/iso2exe/iso2exe.c	Fri Jan 01 19:26:32 2016 +0100
     1.3 @@ -262,6 +262,14 @@
     1.4  	}
     1.5  }
     1.6  
     1.7 +static void clear_config(unsigned i)
     1.8 +{
     1.9 +	for (;i % 512; i++) {
    1.10 +		/* clear custom config */
    1.11 +		write(fd, buffer + 2048, 2048);
    1.12 +	}
    1.13 +}
    1.14 +
    1.15  static unsigned install(char *filename)
    1.16  {
    1.17  #define heads 64
    1.18 @@ -300,10 +308,7 @@
    1.19  		}
    1.20  		i = getcustomsector();
    1.21  		lseek(fd, i * 2048UL, SEEK_SET);
    1.22 -		for (;i % 512; i++) {
    1.23 -			/* clear custom config */
    1.24 -			write(fd, buffer + 2048, 2048);
    1.25 -		}
    1.26 +		clear_config(i);
    1.27  		ftruncate(fd, i * 2048UL);
    1.28  		close(fd);
    1.29  		status = 0;
    1.30 @@ -313,6 +318,8 @@
    1.31  	if (append || initrd) {
    1.32  		unsigned long pos = getcustomsector() * 2048UL;
    1.33  		lseek(fd, pos, SEEK_SET);
    1.34 +		clear_config(pos);
    1.35 +		lseek(fd, pos, SEEK_SET);
    1.36  		write(fd, "#!boot 00000000000000000000000000000000\n", 40);
    1.37  		md5_begin();
    1.38  		if (append) {
    1.39 @@ -356,7 +363,7 @@
    1.40  		}
    1.41  		md5_end();
    1.42  		{
    1.43 -			static char h[] = "0123456789ABCDEF";
    1.44 +			static char h[] = "0123456789abcdef";
    1.45  			char string[32], *s = string + 30;
    1.46  			unsigned char *p = (void *) hash;
    1.47