aboutsummaryrefslogtreecommitdiff
path: root/src/kernel
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2015-03-13 16:16:43 +0100
committerAlex Auvolat <alex@adnab.me>2015-03-13 16:16:43 +0100
commit5bc7fcc00507bbc5ff5bf957a1589209f8495534 (patch)
treef18969c395f6e74e0f299948e376abbe74577f68 /src/kernel
parent41a4f5309ef298da764bf1dca1254e734a4417f0 (diff)
downloadkogata-5bc7fcc00507bbc5ff5bf957a1589209f8495534.tar.gz
kogata-5bc7fcc00507bbc5ff5bf957a1589209f8495534.zip
Shell begins to be usefull.
Diffstat (limited to 'src/kernel')
-rw-r--r--src/kernel/config.h2
-rw-r--r--src/kernel/fs/iso9660.c2
-rw-r--r--src/kernel/user/process.c4
3 files changed, 4 insertions, 4 deletions
diff --git a/src/kernel/config.h b/src/kernel/config.h
index e7b9591..f50a4ff 100644
--- a/src/kernel/config.h
+++ b/src/kernel/config.h
@@ -24,6 +24,6 @@
// Comment to disable either form of debug log output
#define DBGLOG_TO_SERIAL
-#define DBGLOG_TO_SCREEN
+//#define DBGLOG_TO_SCREEN
/* vim: set ts=4 sw=4 tw=0 noet :*/
diff --git a/src/kernel/fs/iso9660.c b/src/kernel/fs/iso9660.c
index 4de6f2b..6c67823 100644
--- a/src/kernel/fs/iso9660.c
+++ b/src/kernel/fs/iso9660.c
@@ -315,7 +315,7 @@ bool iso9660_dir_readdir(fs_handle_t *h, size_t ent_no, dirent_t *d) {
if (!(dr->flags & ISO9660_DR_FLAG_DIR) && name[len] != ';') continue;
if (name[len-1] == '.') len--; // file with no extension
- if (idx == ent_no) {
+ if (idx - 2 == ent_no) {
// Found the node we are interested in
if (len >= DIR_MAX) len = DIR_MAX - 1;
memcpy(d->name, name, len);
diff --git a/src/kernel/user/process.c b/src/kernel/user/process.c
index 52f1031..00a7e44 100644
--- a/src/kernel/user/process.c
+++ b/src/kernel/user/process.c
@@ -244,7 +244,7 @@ void process_exit(process_t *p, int status, int exit_code) {
// notify parent
process_t *par = p->parent;
if (par->status == PS_RUNNING) {
- resume_on(par->children);
+ resume_on(&par->children);
resume_on(p);
}
@@ -408,7 +408,7 @@ void process_wait_any_child(process_t *par, proc_status_t *st, bool wait) {
{ int st = enter_critical(CL_NOSWITCH);
mutex_unlock(&par->lock);
- wait_ok = wait_on(par);
+ wait_ok = wait_on(&par->children);
exit_critical(st); }