Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Nov 26, 2008, 5:35:16 PM (15 years ago)
Author:
adrfried
Message:

unsigned int → size_t for std::string related functions

I hope this fixes some problems on 64bit systems

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/buildsystem/src/core/Script.cc

    r2239 r2278  
    134134  }
    135135
    136   unsigned int Script::getNextQuote(const std::string& text, unsigned int start)
    137   {
    138     unsigned int quote = start - 1;
    139 
    140     while ((quote = text.find('\"', quote + 1)) != std::string::npos)
    141     {
    142       unsigned int backslash = quote;
    143       unsigned int numbackslashes = 0;
    144       for (; backslash > 0; backslash--, numbackslashes++)
    145         if (text[backslash - 1] != '\\')
    146           break;
    147 
    148       if (numbackslashes % 2 == 0)
    149         break;
    150     }
    151 
    152     return quote;
    153   }
    154 
    155136  std::string Script::replaceLuaTags(const std::string& text)
    156137  {
    157138    // chreate map with all Lua tags
    158     std::map<unsigned int, bool> luaTags;
    159     {
    160       unsigned int pos = 0;
     139    std::map<size_t, bool> luaTags;
     140    {
     141      size_t pos = 0;
    161142      while ((pos = text.find("<?lua", pos)) != std::string::npos)
    162143        luaTags[pos++] = true;
    163144    }
    164145    {
    165       unsigned int pos = 0;
     146      size_t pos = 0;
    166147      while ((pos = text.find("?>", pos)) != std::string::npos)
    167148        luaTags[pos++] = false;
     
    170151    // erase all tags from the map that are between two quotes
    171152    {
    172       std::map<unsigned int, bool>::iterator it = luaTags.begin();
    173       std::map<unsigned int, bool>::iterator it2 = it;
     153      std::map<size_t, bool>::iterator it = luaTags.begin();
     154      std::map<size_t, bool>::iterator it2 = it;
    174155      bool bBetweenQuotes = false;
    175       unsigned int pos = 0;
     156      size_t pos = 0;
    176157      while ((pos = getNextQuote(text, pos)) != std::string::npos)
    177158      {
     
    196177    {
    197178      bool expectedValue = true;
    198       for (std::map<unsigned int, bool>::iterator it = luaTags.begin(); it != luaTags.end(); ++it)
     179      for (std::map<size_t, bool>::iterator it = luaTags.begin(); it != luaTags.end(); ++it)
    199180      {
    200181        if (it->second == expectedValue)
     
    215196    std::string output;
    216197    {
    217       std::map<unsigned int, bool>::iterator it = luaTags.begin();
     198      std::map<size_t, bool>::iterator it = luaTags.begin();
    218199      bool bInPrintFunction = true;
    219       unsigned int start = 0;
    220       unsigned int end = 0;
     200      size_t start = 0;
     201      size_t end = 0;
    221202
    222203      do
     
    234215          std::string temp = text.substr(start, end - start);
    235216          {
    236             unsigned int pos = 0;
     217            size_t pos = 0;
    237218            while ((pos = temp.find('[', pos)) != std::string::npos)
    238219            {
    239220              unsigned int tempCounter = 1;
    240               unsigned int tempPos = pos++;
     221              size_t tempPos = pos++;
    241222              while(temp[++tempPos] == '=') {
    242223                tempCounter++;
     
    253234          }
    254235          {
    255             unsigned int pos = 0;
     236            size_t pos = 0;
    256237            while ((pos = temp.find(']', pos)) != std::string::npos)
    257238            {
    258239              unsigned int tempCounter = 1;
    259               unsigned int tempPos = pos++;
     240              size_t tempPos = pos++;
    260241              while(temp[++tempPos] == '=') {
    261242                tempCounter++;
Note: See TracChangeset for help on using the changeset viewer.