From 4141746f8f3851f6f93c6185b0f17856aa0bf83a Mon Sep 17 00:00:00 2001 From: John Sully Date: Fri, 6 May 2022 16:29:27 +0000 Subject: [PATCH] Fix crash in save of masterinfo --- src/rdb.cpp | 2 ++ src/server.h | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/rdb.cpp b/src/rdb.cpp index 9c74914d2..73f89e76e 100644 --- a/src/rdb.cpp +++ b/src/rdb.cpp @@ -1222,6 +1222,8 @@ int rdbSaveInfoAuxFields(rio *rdb, int rdbflags, rdbSaveInfo *rsi) { sdsstring val = sdsstring(sdsempty()); for (auto &msi : rsi->vecmastersaveinfo) { + if (msi.masterhost == nullptr) + continue; val = val.catfmt("%s:%I:%s:%i:%i;", msi.master_replid, msi.master_initial_offset, msi.masterhost.get(), diff --git a/src/server.h b/src/server.h index 386f8e754..e17390c90 100644 --- a/src/server.h +++ b/src/server.h @@ -1904,7 +1904,8 @@ struct MasterSaveInfo { selected_db = 0; } masterport = mi.masterport; - masterhost = sdsstring(sdsdup(mi.masterhost)); + if (mi.masterhost) + masterhost = sdsstring(sdsdup(mi.masterhost)); masterport = mi.masterport; }