Index: generic/tclAPI.h =================================================================== diff -u -r25b538dc2ef31223ad89edf12c3f6e60201049a8 -r533853e3ec6ac529b38d1d48e2fdb82ff7135429 --- generic/tclAPI.h (.../tclAPI.h) (revision 25b538dc2ef31223ad89edf12c3f6e60201049a8) +++ generic/tclAPI.h (.../tclAPI.h) (revision 533853e3ec6ac529b38d1d48e2fdb82ff7135429) @@ -640,7 +640,7 @@ Tcl_Obj *pattern = (Tcl_Obj *)pc.clientData[2]; int returnCode; - if (getMatchObject(interp, pattern, objv[2], &patternObj, &patternString) == -1) { + if (getMatchObject(interp, pattern, objc>2 ? objv[2] : NULL, &patternObj, &patternString) == -1) { if (pattern) { DECR_REF_COUNT(pattern); } @@ -718,7 +718,7 @@ Tcl_Obj *pattern = (Tcl_Obj *)pc.clientData[3]; int returnCode; - if (getMatchObject(interp, pattern, objv[3], &patternObj, &patternString) == -1) { + if (getMatchObject(interp, pattern, objc>3 ? objv[3] : NULL, &patternObj, &patternString) == -1) { if (pattern) { DECR_REF_COUNT(pattern); } @@ -753,7 +753,7 @@ Tcl_Obj *pattern = (Tcl_Obj *)pc.clientData[3]; int returnCode; - if (getMatchObject(interp, pattern, objv[3], &patternObj, &patternString) == -1) { + if (getMatchObject(interp, pattern, objc>3 ? objv[3] : NULL, &patternObj, &patternString) == -1) { if (pattern) { DECR_REF_COUNT(pattern); } @@ -842,7 +842,7 @@ Tcl_Obj *pattern = (Tcl_Obj *)pc.clientData[2]; int returnCode; - if (getMatchObject(interp, pattern, objv[2], &patternObj, &patternString) == -1) { + if (getMatchObject(interp, pattern, objc>2 ? objv[2] : NULL, &patternObj, &patternString) == -1) { if (pattern) { DECR_REF_COUNT(pattern); } @@ -1080,7 +1080,7 @@ Tcl_Obj *pattern = (Tcl_Obj *)pc.clientData[3]; int returnCode; - if (getMatchObject(interp, pattern, objv[3], &patternObj, &patternString) == -1) { + if (getMatchObject(interp, pattern, objc>3 ? objv[3] : NULL, &patternObj, &patternString) == -1) { if (pattern) { DECR_REF_COUNT(pattern); }