aboutsummaryrefslogtreecommitdiff
path: root/arclib/prom.c
diff options
context:
space:
mode:
Diffstat (limited to 'arclib/prom.c')
-rw-r--r--arclib/prom.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/arclib/prom.c b/arclib/prom.c
index 5c12ff4..74f243c 100644
--- a/arclib/prom.c
+++ b/arclib/prom.c
@@ -57,6 +57,9 @@ void prom_fatal(const CHAR * message, ...)
ArcEnterInteractiveMode();
}
+void prom_init(void ) {
+}
+
void prom_init_malloc(void)
{
MEMORYDESCRIPTOR *current = NULL;
@@ -170,6 +173,10 @@ static int isEnvVar(const char* arg)
return 0;
}
+void prom_add_arg(char *arg) {
+ iargv[iargc++]=strdup(arg);
+}
+
int prom_parse_args(int argc, char **argv)
{
unsigned long arg;
@@ -203,9 +210,9 @@ int prom_parse_args(int argc, char **argv)
* "OSLoadOptions=auto" on reboot but
* EnvironmentVariable("OSLoadOptions") == NULL
*/
- for( arg = 1; arg < argc; arg++ ) {
+ for( arg = 0; arg < argc; arg++ ) {
if(!isEnvVar(argv[arg])) {
- iargv[iargc++]=strdup(argv[arg]);
+ prom_add_arg(argv[arg]);
} else {
if (OSLoadOptions) {
prom_add_arg(OSLoadOptions);
@@ -216,14 +223,12 @@ int prom_parse_args(int argc, char **argv)
return 0;
}
-void prom_add_arg(char *arg) {
- iargv[iargc++]=strdup(arg);
-}
-
char *prom_get_label(void ) {
if (iargc > 1 && iargv[1]) {
return iargv[1];
}
+ if (OSLoadFilename)
+ return OSLoadFilename;
return "Linux";
}