From fc388573ae7842c7fb46f7c3c921ff39f4b393c7 Mon Sep 17 00:00:00 2001 From: Shivaram Lingamneni Date: Sun, 22 Jun 2025 18:27:03 -0400 Subject: [PATCH] fix: deleting a nonexistent key gets a FAIL --- irc/handlers.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/irc/handlers.go b/irc/handlers.go index 0440bf27..b17d094b 100644 --- a/irc/handlers.go +++ b/irc/handlers.go @@ -3200,9 +3200,10 @@ func metadataRegisteredHandler(client *Client, config *Config, subcommand string } else { if updated := targetObj.DeleteMetadata(key); updated { notifySubscribers(server, rb.session, targetObj, target, key, "", false) + rb.Add(nil, server.name, RPL_KEYNOTSET, client.Nick(), target, key, client.t("Key deleted")) + } else { + rb.Add(nil, server.name, "FAIL", "METADATA", "KEY_NOT_SET", utils.SafeErrorParam(key), client.t("Metadata key not set")) } - // acknowledge to the client whether or not there was a real update - rb.Add(nil, server.name, RPL_KEYNOTSET, client.Nick(), target, key, client.t("Key deleted")) } case "get":