diff --git a/userprog/argument_parsing.h b/userprog/argument_parsing.h index 495f63428e5376880309167d5bd964651378772f..99ef71bba60f33a0a81e094ddcb7daca008429b0 100644 --- a/userprog/argument_parsing.h +++ b/userprog/argument_parsing.h @@ -17,6 +17,6 @@ int parse_arguments(const char* command_line, char***argv); * I have used stackPointer as the name as that makes sense inside populate_stack, * In process.c esp has been renamed to initialStackPointer */ -void populate_stack(void* stackPointer, int argc, char** argv); +void populate_stack(void** stackPointer, int argc, char** argv); #endif /* userprog/argument_parsing.h */ diff --git a/userprog/process.c b/userprog/process.c index 668584f6734ddea0e1951e4b6f6f65ac7881e432..a2ba3695e7dbe4e6426c042f4e11b2f6f65ddedb 100644 --- a/userprog/process.c +++ b/userprog/process.c @@ -68,7 +68,7 @@ start_process (void *file_name_) if_.cs = SEL_UCSEG; if_.eflags = FLAG_IF | FLAG_MBS; - success = load (file_name, &if_.eip, &if_.initialStackPointer); + success = load (file_name, &if_.eip, &if_.esp); /* If load failed, quit. */ palloc_free_page (file_name); @@ -228,7 +228,7 @@ load (const char *file_name, void (**eip) (void), void **initialStackPointer) struct thread *t = thread_current (); struct Elf32_Ehdr ehdr; struct file * = NULL; - off_t file_ofs;file + off_t file_ofs; bool success = false; int i; @@ -456,7 +456,6 @@ setup_stack (void **initialStackPointer, char **argv, int argc) success = install_page (((uint8_t *) PHYS_BASE) - PGSIZE, kpage, true); if (success) { *initialStackPointer = PHYS_BASE - 12; - arr[] } else palloc_free_page (kpage); }