From d29af84886697bbfb96d3b723dcd3a69a45ddb90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Fri, 27 May 2016 23:32:11 +0200 Subject: [PATCH] Make sure to hold string alive when using c_str() (#3760) --- src/network/network.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/network/network.cpp b/src/network/network.cpp index 5dad15ed1d..8be330e00a 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -739,7 +739,8 @@ bool Network::BeginClient(const char* host, unsigned short port) key.SavePrivate(privkey); SDL_RWclose(privkey); - const utf8 *publicKeyHash = key.PublicKeyHash().c_str(); + const std::string hash = key.PublicKeyHash(); + const utf8 *publicKeyHash = hash.c_str(); network_get_public_key_path(keyPath, sizeof(keyPath), gConfigNetwork.player_name, publicKeyHash); Console::WriteLine("Key generated, saving public bits as %s", keyPath); SDL_RWops *pubkey = SDL_RWFromFile(keyPath, "wb+");