From 8743326924dcbb130f8d390f6ab60b45842bbf23 Mon Sep 17 00:00:00 2001
From: Max Kellermann <max.kellermann@gmail.com>
Date: Sun, 23 Jul 2023 09:34:18 +0200
Subject: [PATCH] sticker/Database: allow moving

---
 src/sticker/Database.cxx | 3 ++-
 src/sticker/Database.hxx | 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/sticker/Database.cxx b/src/sticker/Database.cxx
index f6cf0486d..67ca50fee 100644
--- a/src/sticker/Database.cxx
+++ b/src/sticker/Database.cxx
@@ -93,7 +93,8 @@ StickerDatabase::StickerDatabase(Path path)
 
 StickerDatabase::~StickerDatabase() noexcept
 {
-	assert(db != nullptr);
+	if (db == nullptr)
+		return;
 
 	for (const auto &sticker : stmt) {
 		assert(sticker != nullptr);
diff --git a/src/sticker/Database.hxx b/src/sticker/Database.hxx
index 8b59e0c93..e9d6dd804 100644
--- a/src/sticker/Database.hxx
+++ b/src/sticker/Database.hxx
@@ -65,6 +65,9 @@ public:
 	StickerDatabase(Path path);
 	~StickerDatabase() noexcept;
 
+	StickerDatabase(StickerDatabase &&) noexcept = default;
+	StickerDatabase &operator=(StickerDatabase &&) noexcept = default;
+
 	/**
 	 * Returns one value from an object's sticker record.  Returns an
 	 * empty string if the value doesn't exist.