mercurial/ui.py
changeset 52677 b7afc38468bd
parent 52645 4cb75772818d
parent 52442 b3214b7d2390
--- a/mercurial/ui.py	Mon Dec 09 06:23:34 2024 +0100
+++ b/mercurial/ui.py	Thu Jan 16 17:18:16 2025 +0100
@@ -262,6 +262,8 @@
         self.logblockedtimes = False
         # color mode: see mercurial/color.py for possible value
         self._colormode = None
+        # readline prompt: is this currently for a readline prompt?
+        self._readlineprompt = False
         self._terminfoparams = {}
         self._styles = {}
         self._uninterruptible = False
@@ -1741,7 +1743,12 @@
             self.flush()
             prompt = b' '
         else:
-            prompt = self.label(prompt, b'ui.prompt') + b' '
+            wasreadlineprompt = self._readlineprompt
+            try:
+                self._readlineprompt = True
+                prompt = self.label(prompt, b'ui.prompt') + b' '
+            finally:
+                self._readlineprompt = wasreadlineprompt
 
         # prompt ' ' must exist; otherwise readline may delete entire line
         # - http://bugs.python.org/issue12833