diff --git a/ChangeLog b/ChangeLog index 1e9131e4b0..41bafe684b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sat Apr 23 19:49:21 2005 Hirokazu Yamamoto + + * ext/tcltklib/tcltklib.c (ip_RubyExitCommand): exit with status code + via TclTkIp#_eval didn't work. [ruby-talk:139390] + Sat Apr 23 11:45:29 2005 Nobuyoshi Nakada * eval.c (rb_provided): should check also path name to be loaded. diff --git a/ext/tk/tcltklib.c b/ext/tk/tcltklib.c index e93fc04cc9..67a9b75383 100644 --- a/ext/tk/tcltklib.c +++ b/ext/tk/tcltklib.c @@ -2860,16 +2860,17 @@ ip_RubyExitCommand(clientData, interp, argc, argv) case 2: #if TCL_MAJOR_VERSION >= 8 - if (!Tcl_GetIntFromObj(interp, argv[1], &state)) { + if (Tcl_GetIntFromObj(interp, argv[1], &state) == TCL_ERROR) { return TCL_ERROR; } param = Tcl_GetString(argv[1]); #else /* TCL_MAJOR_VERSION < 8 */ state = (int)strtol(argv[1], &endptr, 0); - if (endptr) { + if (*endptr) { Tcl_AppendResult(interp, "expected integer but got \"", argv[1], "\"", (char *)NULL); + return TCL_ERROR; } param = argv[1]; #endif