wok-next diff syslinux/stuff/extra/md5sum.c @ rev 18783
syslinux: set tz command line argument
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sun Jan 03 13:17:18 2016 +0100 (2016-01-03) |
parents | 8ac5467237fd |
children | 67f5b3bae0a8 |
line diff
1.1 --- a/syslinux/stuff/extra/md5sum.c Sun Dec 06 17:41:24 2015 +0100 1.2 +++ b/syslinux/stuff/extra/md5sum.c Sun Jan 03 13:17:18 2016 +0100 1.3 @@ -573,6 +573,7 @@ 1.4 syslinux_setadv(slot++, strlen(*argv), *argv); 1.5 } 1.6 1.7 +#include "../../core/unlzma.c" 1.8 static int main_kbdmap(int argc, char *argv[]) 1.9 { 1.10 const struct syslinux_keyboard_map *const kmap = syslinux_keyboard_map(); 1.11 @@ -592,8 +593,18 @@ 1.12 1.13 msg = "Load error"; 1.14 if (kmap->version != 1 || 1.15 - loadfile(argv[1], (void **) &kbdmap, &map_size) || 1.16 - strncmp(kbdmap, "07070", 5)) 1.17 + loadfile(argv[1], (void **) &kbdmap, &map_size)) 1.18 + goto kbdmap_error; 1.19 + if (* (short *) kbdmap == 0x005D) { 1.20 + void *p = malloc(map_size = * (long *) (kbdmap + 5)); 1.21 + void *heap = malloc(2*(1846 + (768 << (3 + 0))) + 16); 1.22 + 1.23 + unlzma(kbdmap, p, heap); 1.24 + free(heap); 1.25 + free(kbdmap); 1.26 + kbdmap = p; 1.27 + } 1.28 + if (strncmp(kbdmap, "07070", 5)) 1.29 goto kbdmap_error; 1.30 1.31 // search for mapfile in cpio archive