[2/5] location-functions.pl: Add END block to release the database handle.

Message ID 20201107184724.3590-2-stefan.schantl@ipfire.org
State Accepted
Commit f46fd078148d4c6959e7ab3c52f1911bd8fea9a6
Headers
Series [1/5] location-functions.pl: Use a single script-wide db_handle. |

Commit Message

Stefan Schantl Nov. 7, 2020, 6:47 p.m. UTC
  Reference #12515.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
---
 config/cfgroot/location-functions.pl | 10 ++++++++++
 1 file changed, 10 insertions(+)
  

Patch

diff --git a/config/cfgroot/location-functions.pl b/config/cfgroot/location-functions.pl
index 9b1d0bfb5..483703016 100644
--- a/config/cfgroot/location-functions.pl
+++ b/config/cfgroot/location-functions.pl
@@ -218,4 +218,14 @@  sub address_has_flags($) {
 	return @flags;
 }
 
+# Custom END declaration which will be executed when perl
+# ends, to release the database handle to libloc.
+END {
+	# Check if a database handle exists.
+	if ($db_handle) {
+		# Destroy libloc database handle.
+		&Location::DESTROY($db_handle);
+	}
+}
+
 1;