diff options
author | Steve Bennett <steveb@workware.net.au> | 2024-04-02 07:37:49 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2024-04-02 08:20:42 +1000 |
commit | d009bf2f46f4445f6bb6a5e403deb1a0d75c8d70 (patch) | |
tree | 235a804f136c85cee7ec41af42dc4774dd63d0be | |
parent | 161aad13cda299162273d07ad4ebb9834bea6f91 (diff) | |
download | jimtcl-d009bf2f46f4445f6bb6a5e403deb1a0d75c8d70.zip jimtcl-d009bf2f46f4445f6bb6a5e403deb1a0d75c8d70.tar.gz jimtcl-d009bf2f46f4445f6bb6a5e403deb1a0d75c8d70.tar.bz2 |
lreplace: avoid memmove() with NULL pointer
In the case there is nothing to insert
Could be provoked with: lreplace {a b} 0 0
Fixes: #300
Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r-- | jim.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -7114,6 +7114,11 @@ static void ListInsertElements(Jim_Obj *listPtr, int idx, int elemc, Jim_Obj *co int i; Jim_Obj **point; + if (elemc == 0) { + /* Nothing to do */ + return; + } + if (requiredLen > listPtr->internalRep.listValue.maxLen) { if (currentLen) { /* Assume that we will need extra space for future expansion */ |