c++ - malloc(): memory corruption (fast), std::vector and std::stringstream -


so... got weird one. in following code, receive

*** error in `./a.out': malloc(): memory corruption (fast): 0x00000000011165f0 *** 

on while loop line of below function.

std::vector<std::string> stringsplitter(const std::string & tosplit, char split) {     std::stringstream stream(tosplit);     std::vector<std::string> toreturn;     std::string current;      while (std::getline(stream, current, split))         toreturn.push_back(current);      return toreturn; } 

i have been able reproduce error sending

send allenh1 passwd sup? 

but function works intended when send it

command allenh1 passwd room1 

any ideas?


the call function comes following lines in function:

   file * fssock = fdopen(fd, "r+");  // read character character until \n found or command string full.    while (commandlinelength < maxcommandline &&     read( fd, &newchar, 1) > 0 ) {      if (newchar == '\n' && prevchar == '\r') {         break;     }      commandline[ commandlinelength ] = newchar;     commandlinelength++;      prevchar = newchar; }  // add null character @ end of string // eliminate last \r commandlinelength--;     commandline[ commandlinelength ] = 0;  printf("received: %s\n", commandline);  std::string input(commandline); std::vector<std::string> byspace = stringsplitter(input, ' '); 

vector<string> split(string str, char delimiter) {   vector<string> internal;   stringstream ss(str); // turn string stream.   string tok;    while(getline(ss, tok, delimiter)) {     internal.push_back(tok);   }    return internal; } 

Comments

Popular posts from this blog

python - Installing PyDev in eclipse is failed -

PHP OOP-based login system -

c# - Nested Internal Class with Readonly Hashtable throws Null ref exception.. on assignment -