--- smsdaemon/SmsPdu.cpp 2008/06/13 10:10:06 75 +++ smsdaemon/SmsPdu.cpp 2008/12/07 10:15:44 136 @@ -144,7 +144,6 @@ const unsigned char UDHI = multipart ? 0x40 : 0; - srand(time(0)); unsigned char csms_ref = rand() % 128; int part_count; @@ -191,7 +190,7 @@ if (multipart) { message_part = message.substr(0, PDU_LEN); - message.erase(0, PDU_LEN); + message.erase(0, PDU_LEN-1); pdu.push_back( message_part.length()+ 7 ); //UserDataLength pdu.push_back( 0x06 ); // UDH Len @@ -321,7 +320,9 @@ vector user_data; user_data.insert(user_data.end(), it, it+data_len); - result.message = Decode8to7bit(user_data, shift_start); + result.message = Decode8to7bit(user_data, shift_start).substr(0,data_len); + + result.message = Util::str_trim(result.message); return result;