From 90a3cf2d7237941d18f5fd363cb0d86fb39456a7 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Thu, 20 Jul 2023 14:51:05 -0400 Subject: [PATCH] Corrected an issue that undermined the "locking disable" command, and would keep files open (even though they were not marked as locked) and not close them, causing an open file descriptor overflow when too many files are read for the same design. --- VERSION | 2 +- database/DBio.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/VERSION b/VERSION index c583dafc..5f915f90 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -8.3.414 +8.3.415 diff --git a/database/DBio.c b/database/DBio.c index 5bc9bc9e..1fb60baa 100644 --- a/database/DBio.c +++ b/database/DBio.c @@ -1232,7 +1232,7 @@ DBCellRead(cellDef, ignoreTech, dereference, errptr) #ifdef FILE_LOCKS /* Close files that were locked by another user */ - if (cellDef->cd_fd == -2) FCLOSE(f); + if ((FileLocking == FALSE) || (cellDef->cd_fd == -2)) FCLOSE(f); #else /* When using fcntl() to enforce file locks, we can't */ /* close the file descriptor without losing the lock. */