version 0.2.11
[fms.git] / src / freenet / boardlistxml.cpp
index 954a5b4..3de52f0 100644 (file)
@@ -14,7 +14,11 @@ void BoardListXML::AddBoard(const std::string &name, const std::string &descript
        if(name!="" && description!="")\r
        {\r
                std::string lowername=name;\r
-               StringFunctions::Convert(lowername,lowername);\r
+               StringFunctions::LowerCase(lowername,lowername);\r
+               if(lowername.size()>40)\r
+               {\r
+                       lowername.erase(40);\r
+               }\r
                m_boards.push_back(board(lowername,description));\r
        }\r
 }\r
@@ -56,9 +60,11 @@ std::string BoardListXML::GetXML()
 \r
        for(std::vector<board>::iterator i=m_boards.begin(); i!=m_boards.end(); i++)\r
        {\r
+               std::string boardname=(*i).m_name;\r
+               StringFunctions::LowerCase(boardname,boardname);\r
                TiXmlElement *tr=new TiXmlElement("Board");\r
                tid->LinkEndChild(tr);\r
-               tr->LinkEndChild(XMLCreateCDATAElement("Name",(*i).m_name));\r
+               tr->LinkEndChild(XMLCreateCDATAElement("Name",boardname));\r
                tr->LinkEndChild(XMLCreateCDATAElement("Description",(*i).m_description));\r
        }\r
 \r
@@ -98,6 +104,10 @@ const bool BoardListXML::ParseXML(const std::string &xml)
                        {\r
                                name=txt->ValueStr();\r
                                StringFunctions::LowerCase(name,name);\r
+                               if(name.size()>40)\r
+                               {\r
+                                       name.erase(40);\r
+                               }\r
                        }\r
                        txt=hnd2.FirstChild("Description").FirstChild().ToText();\r
                        if(txt)\r