@@ -262,6 +262,10 @@ int RedisAI_TensorGet_RedisCommand(RedisModuleCtx *ctx, RedisModuleString **argv
262262 RedisModuleKey * key = RedisModule_OpenKey (ctx , keystr ,
263263 REDISMODULE_READ );
264264 int type = RedisModule_KeyType (key );
265+ if (type == REDISMODULE_KEYTYPE_EMPTY ) {
266+ RedisModule_CloseKey (key );
267+ return RedisModule_ReplyWithError (ctx , "ERR cannot get tensor from empty key" );
268+ }
265269 if (!(type == REDISMODULE_KEYTYPE_MODULE &&
266270 RedisModule_ModuleTypeGetType (key ) == RedisAI_TensorType )) {
267271 RedisModule_CloseKey (key );
@@ -536,7 +540,12 @@ int RedisAI_ModelGet_RedisCommand(RedisModuleCtx *ctx, RedisModuleString **argv,
536540 AC_GetRString (& ac , & keystr , 0 );
537541
538542 RedisModuleKey * key = RedisModule_OpenKey (ctx , keystr , REDISMODULE_READ );
539- if (!(RedisModule_KeyType (key ) == REDISMODULE_KEYTYPE_MODULE &&
543+ int type = RedisModule_KeyType (key );
544+ if (type == REDISMODULE_KEYTYPE_EMPTY ) {
545+ RedisModule_CloseKey (key );
546+ return RedisModule_ReplyWithError (ctx , "ERR cannot get model from empty key" );
547+ }
548+ if (!(type == REDISMODULE_KEYTYPE_MODULE &&
540549 RedisModule_ModuleTypeGetType (key ) == RedisAI_ModelType )) {
541550 RedisModule_CloseKey (key );
542551 return RedisModule_ReplyWithError (ctx , REDISMODULE_ERRORMSG_WRONGTYPE );
@@ -963,8 +972,12 @@ int RedisAI_ScriptGet_RedisCommand(RedisModuleCtx *ctx, RedisModuleString **argv
963972 AC_GetRString (& ac , & keystr , 0 );
964973
965974 RedisModuleKey * key = RedisModule_OpenKey (ctx , keystr , REDISMODULE_READ );
966-
967- if (!(RedisModule_KeyType (key ) == REDISMODULE_KEYTYPE_MODULE &&
975+ int type = RedisModule_KeyType (key );
976+ if (type == REDISMODULE_KEYTYPE_EMPTY ) {
977+ RedisModule_CloseKey (key );
978+ return RedisModule_ReplyWithError (ctx , "ERR cannot get script from empty key" );
979+ }
980+ if (!(type == REDISMODULE_KEYTYPE_MODULE &&
968981 RedisModule_ModuleTypeGetType (key ) == RedisAI_ScriptType )) {
969982 RedisModule_CloseKey (key );
970983 return RedisModule_ReplyWithError (ctx , REDISMODULE_ERRORMSG_WRONGTYPE );
0 commit comments