Stephane - 2006-12-22

Hello,

First of all, thanks for this API. It's a great job !

It seems to me there's a litte issue when receiving contact list, when a contact is on PL list.
I used the WLM client with userA to send a add request to userB, which was offline.
Then I log with userB with my application using JML.

Looking at the traces, I reveive the following line :
INFO: userB NS <<< LST N=userB F=userBFN 16 1
We can observe the list numer is 16 as expected.

But the isInList() returns me contact is in FL !

Looking at the code of getListNum in IncomingLST class :
  if (protocol.before(MsnProtocol.MSNP10))
    return NumberUtils.stringToInt(getParam(2));
  String param = getParam(1);
  if (param != null && param.startsWith("F="))
    return NumberUtils.stringToInt(getParam(3));
    //User not in FL
    return NumberUtils.stringToInt(getParam(1));

I'm in the case when param starts with F=, but I don't have the C=... after. So should't the method return getParam(2) in that case ? As it returns 3, it explains why my user is in FL.
I don't known enough the protocol (and especially the meaning of the C=... part I don't have) to suggest a code correction...
Thanks for your answer.
Regards

Stephane