MCPcopy Create free account
hub / github.com/ddnet/ddnet / OnConfigSave

Method OnConfigSave

src/engine/client/favorites.cpp:37–82  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

35};
36
37void CFavorites::OnConfigSave(IConfigManager *pConfigManager)
38{
39 for(const auto &Entry : m_vEntries)
40 {
41 if(Entry.m_NumAddrs > 1)
42 {
43 pConfigManager->WriteLine("begin_favorite_group");
44 }
45 for(int i = 0; i < Entry.m_NumAddrs; i++)
46 {
47 char aAddr[NETADDR_MAXSTRSIZE];
48 char aBuffer[128];
49 net_addr_str(&Entry.m_aAddrs[i], aBuffer, sizeof(aBuffer), true);
50
51 if(Entry.m_aAddrs[i].type & NETTYPE_TW7)
52 {
53 str_format(
54 aAddr,
55 sizeof(aAddr),
56 "tw-0.7+udp://%s",
57 aBuffer);
58 }
59 else
60 {
61 str_copy(aAddr, aBuffer);
62 }
63
64 if(!Entry.m_AllowPing)
65 {
66 str_format(aBuffer, sizeof(aBuffer), "add_favorite %s", aAddr);
67 }
68 else
69 {
70 // Add quotes to the first parameter for backward
71 // compatibility with versions that took a `r` console
72 // parameter.
73 str_format(aBuffer, sizeof(aBuffer), "add_favorite \"%s\" allow_ping", aAddr);
74 }
75 pConfigManager->WriteLine(aBuffer);
76 }
77 if(Entry.m_NumAddrs > 1)
78 {
79 pConfigManager->WriteLine("end_favorite_group");
80 }
81 }
82}
83
84TRISTATE CFavorites::IsFavorite(const NETADDR *pAddrs, int NumAddrs) const
85{

Callers 1

ConfigSaveCallbackMethod · 0.45

Calls 4

net_addr_strFunction · 0.85
str_formatFunction · 0.85
WriteLineMethod · 0.80
str_copyFunction · 0.50

Tested by

no test coverage detected