summaryrefslogtreecommitdiff
path: root/src/sysync/syncagent.cpp
diff options
context:
space:
mode:
authorChen Congwu <congwu.chen@intel.com>2010-03-01 17:57:57 +0800
committerPatrick Ohly <patrick.ohly@intel.com>2010-03-05 08:20:37 +0100
commitb40884e82d82fc8031db11af6225cac5ddc94a5b (patch)
treedc15be62f61c10d892bd6c750b835b1d4ec4b3c7 /src/sysync/syncagent.cpp
parent3e687ddfca1145bbc7b3394e5c7bb9cfd66e332e (diff)
Server: made silently swallow garbage after end of incoming SyncML message
The problem was already fixed in client mode, the same problem and fix applied for server mode.
Diffstat (limited to 'src/sysync/syncagent.cpp')
-rwxr-xr-xsrc/sysync/syncagent.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/sysync/syncagent.cpp b/src/sysync/syncagent.cpp
index 6df6e23..ac9069e 100755
--- a/src/sysync/syncagent.cpp
+++ b/src/sysync/syncagent.cpp
@@ -3113,6 +3113,17 @@ TSyError TSyncAgent::ServerGeneratingStep(uInt16 &aStepCmd, TEngineProgressInfo
}
// request reset
fRequestSize = 0;
+
+ // finished generating outgoing message
+ // - make sure read pointer is set (advanced in case incoming
+ // message had trailing garbage) to beginning of generated
+ // answer. With incoming message being clean SyncML without
+ // garbage, this call is not needed, however with garbage
+ // it is important because otherwise outgoing message
+ // would have that garbage inserted before actual message
+ // start.
+ smlReadOutgoingAgain(getSmlWorkspaceID());
+
// return status
return LOCERR_OK;
} // TSyncAgent::ServerGeneratingStep