git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
feat: owloysius - dynamic init function invocator
[lunaix-os.git]
/
lunaix-os
/
kernel
/
kcmd.c
diff --git
a/lunaix-os/kernel/kcmd.c
b/lunaix-os/kernel/kcmd.c
index dc06c189a05a3b1ed0fca9875603155f41efe5cc..6860065fa0a5732e9c79130fafff74d7b1d4d0d5 100644
(file)
--- a/
lunaix-os/kernel/kcmd.c
+++ b/
lunaix-os/kernel/kcmd.c
@@
-34,6
+34,10
@@
extract_next_option(struct extractor* ctx)
s->len = 0;
s->pos = i;
s->len = 0;
s->pos = i;
+ if (!ctx->cmdline[i]) {
+ return false;
+ }
+
while((c = ctx->cmdline[i++])) {
if (c == ' ') {
while ((c = ctx->cmdline[i++]) && c == ' ');
while((c = ctx->cmdline[i++])) {
if (c == ' ') {
while ((c = ctx->cmdline[i++]) && c == ' ');
@@
-50,21
+54,17
@@
extract_next_option(struct extractor* ctx)
state = PARSE_VAL;
s = &ctx->val;
s->len = 0;
state = PARSE_VAL;
s = &ctx->val;
s->len = 0;
- s->pos = i
+ 1
;
+ s->pos = i;
continue;
}
}
continue;
}
}
- while ((c = ctx->cmdline[i++]) && c != ' ') {
- s->len++;
- }
-
- i--;
+ s->len++;
}
}
- ctx->pos = i;
+ ctx->pos = i
- 1
;
- return
!!c
;
+ return
true
;
}
#define MAX_KEYSIZE 16
}
#define MAX_KEYSIZE 16