summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlivier Blin <oblin@mandriva.org>2004-06-11 14:42:40 +0000
committerOlivier Blin <oblin@mandriva.org>2004-06-11 14:42:40 +0000
commit9a4ddbc85674f341854696ea2d55af038d23df8d (patch)
treec95b65d8d30a6823bc387059adb88290774ed488
parent99a03f82cc8c7deffcfc0cac4587872c44b104e7 (diff)
downloaddrakx-9a4ddbc85674f341854696ea2d55af038d23df8d.tar
drakx-9a4ddbc85674f341854696ea2d55af038d23df8d.tar.gz
drakx-9a4ddbc85674f341854696ea2d55af038d23df8d.tar.bz2
drakx-9a4ddbc85674f341854696ea2d55af038d23df8d.tar.xz
drakx-9a4ddbc85674f341854696ea2d55af038d23df8d.zip
in testing mode, try to open cmdline file in current directory before trying in /proc
-rw-r--r--mdk-stage1/tools.c24
1 files changed, 17 insertions, 7 deletions
diff --git a/mdk-stage1/tools.c b/mdk-stage1/tools.c
index 76a70dec0..2a5200aa7 100644
--- a/mdk-stage1/tools.c
+++ b/mdk-stage1/tools.c
@@ -53,13 +53,23 @@ static int param_number = 0;
void process_cmdline(void)
{
char buf[512];
- int fd, size, i;
-
- log_message("opening /proc/cmdline... ");
-
- if ((fd = open("/proc/cmdline", O_RDONLY)) == -1)
- fatal_error("could not open /proc/cmdline");
-
+ int size, i;
+ int fd = -1;
+
+ if (IS_TESTING) {
+ log_message("TESTING: opening cmdline... ");
+
+ if ((fd = open("cmdline", O_RDONLY)) == -1)
+ log_message("TESTING: could not open cmdline");
+ }
+
+ if (fd == -1) {
+ log_message("opening /proc/cmdline... ");
+
+ if ((fd = open("/proc/cmdline", O_RDONLY)) == -1)
+ fatal_error("could not open /proc/cmdline");
+ }
+
size = read(fd, buf, sizeof(buf));
buf[size-1] = '\0'; // -1 to eat the \n
close(fd);