zsh-workers
 help / color / mirror / code / Atom feed
* [PATCH] Another from Etc/BUGS: remove =(...) files on exit
@ 2022-04-30  5:15 Bart Schaefer
  0 siblings, 0 replies; only message in thread
From: Bart Schaefer @ 2022-04-30  5:15 UTC (permalink / raw)
  To: Zsh hackers list

[-- Attachment #1: Type: text/plain, Size: 136 bytes --]

This appears to be pretty straightforward.

I'm wondering if clearjobtab() should do something with the memory
pointed to by filelists?

[-- Attachment #2: cleanfiles.txt --]
[-- Type: text/plain, Size: 833 bytes --]

diff --git a/Src/builtin.c b/Src/builtin.c
index b93466ba5..1cef7cce8 100644
--- a/Src/builtin.c
+++ b/Src/builtin.c
@@ -5860,6 +5860,7 @@ zexit(int val, enum zexit_t from_where)
 	/* send SIGHUP to any jobs left running  */
 	killrunjobs(from_where == ZEXIT_SIGNAL);
     }
+    cleanfilelists();
     if (isset(RCS) && interact) {
 	if (!nohistsave) {
 	    int writeflags = HFILE_USE_OPTIONS;
diff --git a/Src/jobs.c b/Src/jobs.c
index 85d4c4d1f..a91ef787f 100644
--- a/Src/jobs.c
+++ b/Src/jobs.c
@@ -1366,6 +1366,18 @@ deletefilelist(LinkList file_list, int disowning)
     }
 }
 
+/**/
+void
+cleanfilelists(void)
+{
+    int i;
+
+    DPUTS(shell_exiting >= 0, "BUG: cleanfilelists() before exit");
+ 
+    for (i = 1; i <= maxjob; i++)
+	deletefilelist(jobtab[i].filelist, 0);
+}
+
 /**/
 void
 freejob(Job jn, int deleting)

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-04-30  5:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-30  5:15 [PATCH] Another from Etc/BUGS: remove =(...) files on exit Bart Schaefer

Code repositories for project(s) associated with this inbox:

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).