diff options
author | sebres <sebres@users.sourceforge.net> | 2018-09-07 12:02:25 (GMT) |
---|---|---|
committer | sebres <sebres@users.sourceforge.net> | 2018-09-07 12:02:25 (GMT) |
commit | e94df653503422912da11308867c163c0382c50c (patch) | |
tree | e2b7d7ba7122d6e1dbbe4e6ae034253d7f2e1668 /generic/tclProc.c | |
parent | 5c9968a001208bb4fc6d06ad040c28bd84b7831f (diff) | |
parent | e80eaec4d3430e0db5f54dde5059821f35e77637 (diff) | |
download | tcl-e94df653503422912da11308867c163c0382c50c.zip tcl-e94df653503422912da11308867c163c0382c50c.tar.gz tcl-e94df653503422912da11308867c163c0382c50c.tar.bz2 |
merge 8.6 (segfault fix)
Diffstat (limited to 'generic/tclProc.c')
-rw-r--r-- | generic/tclProc.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/generic/tclProc.c b/generic/tclProc.c index 212b680..a9eb5be 100644 --- a/generic/tclProc.c +++ b/generic/tclProc.c @@ -505,10 +505,11 @@ TclCreateProc( goto procError; } - nameLength = Tcl_NumUtfChars(Tcl_GetString(fieldValues[0]), fieldValues[0]->length); + argname = Tcl_GetStringFromObj(fieldValues[0], &plen); + nameLength = Tcl_NumUtfChars(argname, plen); if (fieldCount == 2) { - valueLength = Tcl_NumUtfChars(Tcl_GetString(fieldValues[1]), - fieldValues[1]->length); + const char * value = TclGetString(fieldValues[1]); + valueLength = Tcl_NumUtfChars(value, fieldValues[1]->length); } else { valueLength = 0; } @@ -517,7 +518,6 @@ TclCreateProc( * Check that the formal parameter name is a scalar. */ - argname = Tcl_GetStringFromObj(fieldValues[0], &plen); argnamei = argname; argnamelast = argname[plen-1]; while (plen--) { |