changeset 6637:6a564271462e

Fail early when trying to add an empty value in a queue/kvs
author Alain Mazy <am@orthanc.team>
date Thu, 26 Mar 2026 11:56:40 +0100
parents a0d6160a9203
children a92513c29da2
files OrthancServer/Plugins/Engine/OrthancPlugins.cpp
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/OrthancServer/Plugins/Engine/OrthancPlugins.cpp	Tue Mar 24 11:47:15 2026 +0100
+++ b/OrthancServer/Plugins/Engine/OrthancPlugins.cpp	Thu Mar 26 11:56:40 2026 +0100
@@ -4943,6 +4943,11 @@
 
     CheckKeyValueStoresSupport(lock.GetContext());
 
+    if (parameters.valueSize == 0 || parameters.value == NULL)
+    {
+      throw OrthancException(ErrorCode_ParameterOutOfRange, "You must provide a non-null and non-empty value when adding a value in a Key-Value store.");
+    }
+
     lock.GetContext().GetIndex().StoreKeyValue(parameters.storeId, parameters.key, parameters.value, parameters.valueSize);
   }
 
@@ -5006,6 +5011,11 @@
 
     CheckQueuesSupport(lock.GetContext());
 
+    if (parameters.valueSize == 0 || parameters.value == NULL)
+    {
+      throw OrthancException(ErrorCode_ParameterOutOfRange, "You must provide a non-null and non-empty value when enqueing a value in a Queue.");
+    }
+
     lock.GetContext().GetIndex().EnqueueValue(parameters.queueId, parameters.value, parameters.valueSize);
   }