diff options
author | Steve Bennett <steveb@workware.net.au> | 2018-06-03 16:17:18 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2018-06-03 16:18:32 +1000 |
commit | eaea86f9c7cc0ac02673e5bcf6ebf7d7ba17dcc8 (patch) | |
tree | 50fe7abca018ae1e680983a77d0c88d5898b68f3 | |
parent | 3ff4cdbb49321b7e9679015bf1fc64033e4a4f79 (diff) | |
download | jimtcl-eaea86f9c7cc0ac02673e5bcf6ebf7d7ba17dcc8.zip jimtcl-eaea86f9c7cc0ac02673e5bcf6ebf7d7ba17dcc8.tar.gz jimtcl-eaea86f9c7cc0ac02673e5bcf6ebf7d7ba17dcc8.tar.bz2 |
jim.c: Jim_Length/Jim_String internal checks
Perform the same internal checks as Jim_GetString() when
the string rep needs to be generated by calling Jim_GetString()
Reported-by: Stuart Cassoff <stwo@bell.net>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r-- | jim.c | 7 |
1 files changed, 2 insertions, 5 deletions
@@ -2286,8 +2286,7 @@ int Jim_Length(Jim_Obj *objPtr) { if (objPtr->bytes == NULL) { /* Invalid string repr. Generate it. */ - JimPanic((objPtr->typePtr->updateStringProc == NULL, "UpdateStringProc called against '%s' type.", objPtr->typePtr->name)); - objPtr->typePtr->updateStringProc(objPtr); + Jim_GetString(objPtr, NULL); } return objPtr->length; } @@ -2297,9 +2296,7 @@ const char *Jim_String(Jim_Obj *objPtr) { if (objPtr->bytes == NULL) { /* Invalid string repr. Generate it. */ - JimPanic((objPtr->typePtr == NULL, "UpdateStringProc called against typeless value.")); - JimPanic((objPtr->typePtr->updateStringProc == NULL, "UpdateStringProc called against '%s' type.", objPtr->typePtr->name)); - objPtr->typePtr->updateStringProc(objPtr); + Jim_GetString(objPtr, NULL); } return objPtr->bytes; } |