diff options
| author | 2012-09-30 01:10:57 +0200 | |
|---|---|---|
| committer | 2012-09-30 03:04:07 +0200 | |
| commit | 02859be56d43bcece02aab350e02bc95ed1bf446 (patch) | |
| tree | bbb68a91e26f4502c22047ad2b26ed8918c5fbb1 /src/modules/m_spanningtree/netburst.cpp | |
| parent | Fixed issue #303 - fixed Windows build (diff) | |
Fix more undefined behavior caused by referencing the returned buffer by std::string::c_str() when the object is temporary
See 83c7cc45daf6fb1f8c36f15297a4657e45a34e88
Diffstat (limited to 'src/modules/m_spanningtree/netburst.cpp')
| -rw-r--r-- | src/modules/m_spanningtree/netburst.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/modules/m_spanningtree/netburst.cpp b/src/modules/m_spanningtree/netburst.cpp index b1b55c986..8cd0dccd9 100644 --- a/src/modules/m_spanningtree/netburst.cpp +++ b/src/modules/m_spanningtree/netburst.cpp @@ -74,7 +74,9 @@ void TreeSocket::SendServers(TreeServer* Current, TreeServer* s, int hops) TreeServer* recursive_server = Current->GetChild(q); if (recursive_server != s) { - snprintf(command,1024,":%s SERVER %s * %d %s :%s",Current->GetName().c_str(),recursive_server->GetName().c_str(),hops, + std::string servername = Current->GetName(); + std::string recursive_servername = recursive_server->GetName(); + snprintf(command,1024,":%s SERVER %s * %d %s :%s", servername.c_str(), recursive_servername.c_str(), hops, recursive_server->GetID().c_str(), recursive_server->GetDesc().c_str()); this->WriteLine(command); |
