aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Str.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Str.c b/Str.c
index ab8e4bd..b4f1360 100644
--- a/Str.c
+++ b/Str.c
@@ -348,10 +348,12 @@ Strinsert_char(Str s, int pos, char c)
{
int i;
STR_LENGTH_CHECK(s);
- if (pos < 0 || s->length < pos)
+ if (pos < 0)
return;
if (s->length + 2 > s->area_size)
Strgrow(s);
+ if (s->length < pos)
+ return;
for (i = s->length; i > pos; i--)
s->ptr[i] = s->ptr[i - 1];
s->ptr[++s->length] = '\0';