From 2766c6bb69ced7c4f33ec9d8bda56ba5b66e2915 Mon Sep 17 00:00:00 2001 From: Guillaume Cottenceau Date: Sat, 16 Dec 2000 22:03:06 +0000 Subject: - network/nfs works --- mdk-stage1/tools.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'mdk-stage1/tools.c') diff --git a/mdk-stage1/tools.c b/mdk-stage1/tools.c index 2fae6acea..9420ed1dd 100644 --- a/mdk-stage1/tools.c +++ b/mdk-stage1/tools.c @@ -70,8 +70,7 @@ void process_cmdline(void) i++; continue; } - name = (char *) malloc(i-j + 1); - memcpy(name, &buf[j], i-j); + name = memdup(&buf[j], i-j + 1); name[i-j] = 0; if (buf[i] == '=') { @@ -79,8 +78,7 @@ void process_cmdline(void) i++; while (buf[i] != ' ' && buf[i] != 0) i++; - value = (char *) malloc(i-k + 1); - memcpy(value, &buf[k], i-k); + value = memdup(&buf[k], i-k + 1); value[i-k] = 0; } @@ -104,8 +102,7 @@ void process_cmdline(void) tmp_params[p++].name = NULL; - params = (struct cmdline_elem *) malloc(sizeof(struct cmdline_elem) * p); - memcpy(params, tmp_params, sizeof(struct cmdline_elem) * p); + params = memdup(tmp_params, sizeof(struct cmdline_elem) * p); log_message("\tgot %d args", p); } @@ -231,7 +228,7 @@ enum return_type load_ramdisk(void) } stat(img_name, &statr); - init_progression("Loading Installation program into memory...", statr.st_size); + init_progression("Loading program into memory...", statr.st_size); while (!gzeof(st2)) { int actually = gzread(st2, buffer, sizeof(buffer)); @@ -264,3 +261,11 @@ enum return_type load_ramdisk(void) return RETURN_OK; } + +/* pixel's */ +void * memdup(void *src, size_t size) +{ + void * r = malloc(size); + memcpy(r, src, size); + return r; +} -- cgit v1.2.1