emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-26 9bee762: ; * src/coding.c: Improve commentary. (


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-26 9bee762: ; * src/coding.c: Improve commentary. (Bug#34765)
Date: Thu, 23 May 2019 10:36:22 -0400 (EDT)

branch: emacs-26
commit 9bee76227c04a5bedbda77c7ada2e5b2aa95e2c9
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    ; * src/coding.c: Improve commentary.  (Bug#34765)
---
 src/coding.c | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/src/coding.c b/src/coding.c
index 249abd9..3a463b9 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -7782,15 +7782,22 @@ encode_coding (struct coding_system *coding)
   SAFE_FREE ();
 }
 
-
-/* Name (or base name) of work buffer for code conversion.  */
+/* Code-conversion operations use internal buffers.  There's a single
+   reusable buffer, which is created the first time it is needed, and
+   then never killed.  When this reusable buffer is being used, the
+   reused_workbuf_in_use flag is set.  If we need another conversion
+   buffer while the reusable one is in use (e.g., if code-conversion
+   is reentered when another code-conversion is in progress), we
+   create temporary buffers using the name of the reusable buffer as
+   the base name, see code_conversion_save below.  These temporary
+   buffers are killed when the code-conversion operations that use
+   them return, see code_conversion_restore below.  */
+
+/* A string that serves as name of the reusable work buffer, and as base
+   name of temporary work buffers used for code-conversion operations.  */
 static Lisp_Object Vcode_conversion_workbuf_name;
 
-/* A working buffer used by the top level conversion.  Once it is
-   created, it is never destroyed.  It has the name
-   Vcode_conversion_workbuf_name.  The other working buffers are
-   destroyed after the use is finished, and their names are modified
-   versions of Vcode_conversion_workbuf_name.  */
+/* The reusable working buffer, created once and never killed.  */
 static Lisp_Object Vcode_conversion_reused_workbuf;
 
 /* True iff Vcode_conversion_reused_workbuf is already in use.  */



reply via email to

[Prev in Thread] Current Thread [Next in Thread]