diff options
author | Kamil Dudka <kdudka@redhat.com> | 2019-07-23 14:45:48 +0200 |
---|---|---|
committer | Peter Stephenson <p.stephenson@samsung.com> | 2019-07-24 17:14:06 +0100 |
commit | f9cd2187875b6f2ebdb9b9a787fac20b2aaf745b (patch) | |
tree | e5288dd6561ed41a74db7b664018031dd7ea1126 /Src/Zle/zle_utils.c | |
parent | a4f3df89abe283c7ebd877768e3b52f807790586 (diff) | |
download | zsh-f9cd2187875b6f2ebdb9b9a787fac20b2aaf745b.tar.gz zsh-f9cd2187875b6f2ebdb9b9a787fac20b2aaf745b.tar.xz zsh-f9cd2187875b6f2ebdb9b9a787fac20b2aaf745b.zip |
44566: make sure Zle doesn't crash if history entry not found
Diffstat (limited to 'Src/Zle/zle_utils.c')
-rw-r--r-- | Src/Zle/zle_utils.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Src/Zle/zle_utils.c b/Src/Zle/zle_utils.c index 0277d4917..d549b885b 100644 --- a/Src/Zle/zle_utils.c +++ b/Src/Zle/zle_utils.c @@ -1607,7 +1607,12 @@ static int unapplychange(struct change *ch) { if(ch->hist != histline) { - zle_setline(quietgethist(ch->hist)); + Histent he = quietgethist(ch->hist); + if(!he) { + dputs(ERRMSG("quietgethist(ch->hist) returned NULL")); + return 1; + } + zle_setline(he); zlecs = ch->new_cs; return 0; } @@ -1647,7 +1652,12 @@ static int applychange(struct change *ch) { if(ch->hist != histline) { - zle_setline(quietgethist(ch->hist)); + Histent he = quietgethist(ch->hist); + if(!he) { + dputs(ERRMSG("quietgethist(ch->hist) returned NULL")); + return 1; + } + zle_setline(he); zlecs = ch->old_cs; return 0; } |