yplo6403 / android-rcs-ims-stack

Automatically exported from code.google.com/p/android-rcs-ims-stack
0 stars 0 forks source link

SessionTimerManager starts after file transfer is completed if file can be sent in one chunk. #220

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Enable a value for the Session refresh expire period in provisioning to 
enable session refresh re-invite
2. Send a small file
3. SessionTimerManager is started and later sends re-invite on already 
terminated session.

What is the expected output? What do you see instead?
SessionTimerManager should not start if file transfer is completed.

What version of the product are you using? On what operating system?
rcs stack 2.5.13 on Android 4.1.3

Please provide any additional information below.
In ImsServiceSession.handle200OK(), it calls startMediaSession() to open the 
msrp session. If the file is small, it will be done in 1 chunk. 
terminateSession() is called before calling the listeners' 
handleSessionStarted(), as a result SessionTimerManager is started after the 
session has already been terminated.

When the timer expires, it tries to send an re-invite to already terminated 
session

Original issue reported on code.google.com by mcd...@mcdull.us on 10 Feb 2014 at 7:40