Rev 3171 | Rev 4338 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3171 | Rev 3686 | ||
---|---|---|---|
Line 48... | Line 48... | ||
48 | #include <ipc/ipc.h> |
48 | #include <ipc/ipc.h> |
49 | #include <async.h> |
49 | #include <async.h> |
50 | #include <as.h> |
50 | #include <as.h> |
51 | #include <loader/pcb.h> |
51 | #include <loader/pcb.h> |
52 | 52 | ||
- | 53 | /* From librtld. */ |
|
- | 54 | #include <rtld.h> |
|
- | 55 | #include <string.h> |
|
- | 56 | ||
53 | extern char _heap; |
57 | extern char _heap; |
54 | extern int main(int argc, char *argv[]); |
58 | extern int main(int argc, char *argv[]); |
55 | 59 | ||
56 | void _exit(int status) |
60 | void _exit(int status) |
57 | { |
61 | { |
Line 72... | Line 76... | ||
72 | open_console(); |
76 | open_console(); |
73 | 77 | ||
74 | /* Save the PCB pointer */ |
78 | /* Save the PCB pointer */ |
75 | __pcb = (pcb_t *)pcb_ptr; |
79 | __pcb = (pcb_t *)pcb_ptr; |
76 | 80 | ||
- | 81 | #ifdef __IN_SHARED_LIBC__ |
|
- | 82 | if (__pcb != NULL && __pcb->rtld_runtime != NULL) { |
|
- | 83 | runtime_env = (runtime_env_t *) __pcb->rtld_runtime; |
|
- | 84 | } |
|
- | 85 | #endif |
|
- | 86 | ||
77 | if (__pcb == NULL) { |
87 | if (__pcb == NULL) { |
78 | argc = 0; |
88 | argc = 0; |
79 | argv = NULL; |
89 | argv = NULL; |
80 | } else { |
90 | } else { |
81 | argc = __pcb->argc; |
91 | argc = __pcb->argc; |