Fix: Concatenation of datagram SMS messages

The 16 bit port address was not being computed correctly.
This commit is contained in:
Denis Kenzior 2009-12-14 10:13:42 -06:00
parent 0bb703f0ae
commit 7a5de89f32
1 changed files with 8 additions and 4 deletions

View File

@ -601,10 +601,14 @@ static void sms_dispatch(struct ofono_sms *sms, GSList *sms_list)
return;
}
if (sms_extract_app_port(s, &cdst, &csrc, &is_8bit) &&
(l == sms_list)) {
srcport = is_8bit ? csrc : (csrc << 8);
dstport = is_8bit ? cdst : (cdst << 8);
if (sms_extract_app_port(s, &cdst, &csrc, &is_8bit)) {
csrc = is_8bit ? csrc : (csrc << 8);
cdst = is_8bit ? cdst : (cdst << 8);
if (l == sms_list) {
srcport = csrc;
dstport = cdst;
}
}
if (srcport != csrc || dstport != cdst) {