hgext/logtoprocess.py
changeset 44417 7c0b8652fd8c
parent 43077 687b865b95ad
child 48875 6000f5b25c9b
--- a/hgext/logtoprocess.py	Mon Feb 24 17:57:57 2020 +0100
+++ b/hgext/logtoprocess.py	Mon Mar 02 14:36:20 2020 -0500
@@ -59,6 +59,13 @@
 
     def log(self, ui, event, msg, opts):
         script = self._scripts[event]
+        maxmsg = 100000
+        if len(msg) > maxmsg:
+            # Each env var has a 128KiB limit on linux. msg can be long, in
+            # particular for command event, where it's the full command line.
+            # Prefer truncating the message than raising "Argument list too
+            # long" error.
+            msg = msg[:maxmsg] + b' (truncated)'
         env = {
             b'EVENT': event,
             b'HGPID': os.getpid(),