]> git.netwichtig.de Git - user/henk/code/inspircd.git/commit
Make InspIRCd::Format return std::string instead of const char*.
authorPeter Powell <petpow@saberuk.com>
Mon, 1 Jan 2018 23:56:35 +0000 (23:56 +0000)
committerPeter Powell <petpow@saberuk.com>
Wed, 3 Jan 2018 12:38:40 +0000 (12:38 +0000)
commit372bb6ec31e26908966ff553b782c9a24a07db6a
tree799f5496c4658a753af2c6b4d8e6ada2f3152ee5
parent5c6352dd9a642bdb1f5fa2727a41dea9197b4536
Make InspIRCd::Format return std::string instead of const char*.

Using the latter is problematic as if you don't copy the return
value before calling Format again your formatted message will be
overwritten by something else. This bug was observed in m_callerid
where InspIRCd::Format was being used for formatting two arguments
the latter of which was being overwritten with the former.

We could have preserved the return type and just copied the string
but then callers would have had to deallocate the string once they
have finished with it which is an undesirabable burden to put on
callers.
include/inspircd.h
include/inspstring.h
include/modules/sql.h
src/helperfuncs.cpp