[3.13] gh-119434: Fix culmitive errors in wrapping as lines proceed (GH-119435) (#119441)

Fix culmitive errors in wrapping as lines proceed
(cherry picked from commit e3bf5381fd)

Co-authored-by: Dino Viehland <dinoviehland@gmail.com>
This commit is contained in:
Miss Islington (bot) 2024-05-23 05:46:11 +02:00 committed by GitHub
parent cd35e9d85a
commit dbff1f1077
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -307,7 +307,8 @@ class Reader:
screen.append(prompt + l)
screeninfo.append((lp, l2))
else:
for i in range(wrapcount + 1):
i = 0
while l:
prelen = lp if i == 0 else 0
index_to_wrap_before = 0
column = 0
@ -317,12 +318,17 @@ class Reader:
index_to_wrap_before += 1
column += character_width
pre = prompt if i == 0 else ""
post = "\\" if i != wrapcount else ""
after = [1] if i != wrapcount else []
if len(l) > index_to_wrap_before:
post = "\\"
after = [1]
else:
post = ""
after = []
screen.append(pre + l[:index_to_wrap_before] + post)
screeninfo.append((prelen, l2[:index_to_wrap_before] + after))
l = l[index_to_wrap_before:]
l2 = l2[index_to_wrap_before:]
i += 1
self.screeninfo = screeninfo
self.cxy = self.pos2xy()
if self.msg and self.msg_at_bottom: