aboutsummaryrefslogtreecommitdiff
path: root/jimsh.c
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2010-11-19 22:22:24 +1000
committerSteve Bennett <steveb@workware.net.au>2010-11-19 22:22:24 +1000
commit64de34132f32f91e573e8f66d843daf3fd50b16d (patch)
treee38258a3448a684dbd3540e725af0387464a61d9 /jimsh.c
parent408d9017562e395c06d4555ab0af1c37e9f99172 (diff)
downloadjimtcl-64de34132f32f91e573e8f66d843daf3fd50b16d.zip
jimtcl-64de34132f32f91e573e8f66d843daf3fd50b16d.tar.gz
jimtcl-64de34132f32f91e573e8f66d843daf3fd50b16d.tar.bz2
Allow Jim_InteractivePrompt() to return [exit] to caller
And update jimsh return code handling Reported-By: Patrick WEBER <patrick.weber@live.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'jimsh.c')
-rw-r--r--jimsh.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/jimsh.c b/jimsh.c
index 1f161c4..d00862e 100644
--- a/jimsh.c
+++ b/jimsh.c
@@ -108,14 +108,14 @@ int main(int argc, char *const argv[])
fprintf(stderr, "%s\n", Jim_GetString(Jim_GetResult(interp), NULL));
}
}
- if (retcode == JIM_OK) {
- retcode = 0;
+ if (retcode == JIM_EXIT) {
+ retcode = Jim_GetExitCode(interp);
}
- else if (retcode == JIM_EXIT) {
- retcode = interp->exitCode;
+ else if (retcode == JIM_ERR) {
+ retcode = 1;
}
else {
- retcode = 1;
+ retcode = 0;
}
Jim_FreeInterp(interp);
return retcode;