No registered users in community xowiki
in last 10 minutes
in last 10 minutes
Re: [Xotcl] two crashy issues // 1.5.x
From: Gustaf Neumann <neumann_at_wu-wien.ac.at>
Date: Mon, 23 Jul 2007 20:09:59 +0200
Stefan and all,
Many thanks for the test cases. Below is the bug-fix for the
empty argument.
Concerning bug#2: i think you sent me the same bug (with a different
testfile) on march 15, i have sent you a fix back on march 16.
i will put togehter today a bugfix version containing the fixes
developed over the last months for testing for Ben to
see, if this helps already for his crashes. Maybe the fix for bug2
helps already.
-gustaf
% diff -u generic/xotcl.c-old generic/xotcl.c
--- generic/xotcl.c-old 2007-07-23 19:47:21.000000000 +0200
+++ generic/xotcl.c 2007-07-23 19:45:30.000000000 +0200
_at_@ -5049,7 +5049,7 @@
/* arg = ObjStr(argsv[i]);
fprintf(stderr, "*** argparse0 arg='%s'\n",arg);*/
rc = Tcl_ListObjGetElements(in, argsv[i], &npac, &npav);
- if (rc == TCL_OK) {
+ if (rc == TCL_OK && npac > 0) {
arg = ObjStr(npav[0]);
/*fprintf(stderr, "*** argparse1 arg='%s' rc=%d\n",arg,rc);*/
if (*arg == '-') {
Stefan Sobernig schrieb:
> I attached two scripts, each reproducing bugs
> I found with most recent versions of XOTcl
> (1.5.2/1.5.3).
>
> Bug -1-: Argument declarations to proc/instproc
> containing a single empty tcl string yield a segfault/bus error.
>
> Bug -2-: Nesting objects through per-object evals (evals
> in the object scope) yields segfaults/bus errors under
> certain conditions.
>
> all the best,
>
> //stefan
>
Date: Mon, 23 Jul 2007 20:09:59 +0200
Stefan and all,
Many thanks for the test cases. Below is the bug-fix for the
empty argument.
Concerning bug#2: i think you sent me the same bug (with a different
testfile) on march 15, i have sent you a fix back on march 16.
i will put togehter today a bugfix version containing the fixes
developed over the last months for testing for Ben to
see, if this helps already for his crashes. Maybe the fix for bug2
helps already.
-gustaf
% diff -u generic/xotcl.c-old generic/xotcl.c
--- generic/xotcl.c-old 2007-07-23 19:47:21.000000000 +0200
+++ generic/xotcl.c 2007-07-23 19:45:30.000000000 +0200
_at_@ -5049,7 +5049,7 @@
/* arg = ObjStr(argsv[i]);
fprintf(stderr, "*** argparse0 arg='%s'\n",arg);*/
rc = Tcl_ListObjGetElements(in, argsv[i], &npac, &npav);
- if (rc == TCL_OK) {
+ if (rc == TCL_OK && npac > 0) {
arg = ObjStr(npav[0]);
/*fprintf(stderr, "*** argparse1 arg='%s' rc=%d\n",arg,rc);*/
if (*arg == '-') {
Stefan Sobernig schrieb:
> I attached two scripts, each reproducing bugs
> I found with most recent versions of XOTcl
> (1.5.2/1.5.3).
>
> Bug -1-: Argument declarations to proc/instproc
> containing a single empty tcl string yield a segfault/bus error.
>
> Bug -2-: Nesting objects through per-object evals (evals
> in the object scope) yields segfaults/bus errors under
> certain conditions.
>
> all the best,
>
> //stefan
>