Adium

Ticket #10263 (closed defect: fixed)

Opened 2 years ago

Last modified 15 months ago

not getting buddy icons for msn

Reported by: zerock Owned by: felipec
Milestone: Component: Service/Other
Version: 1.3b5 Severity: normal
Keywords: Cc:
Patch Status:

Description

after updating to the recent beta, the buddy icons for msn users are missing.

Attachments

08-07-20081851 (13.0 KB) - added by melvinm 2 years ago.

Change History

  Changed 2 years ago by zerock

just got a pic from someone who just came in, everyone else still hasnt gotten an icon

  Changed 2 years ago by zerock

some of them are coming in very slowly

  Changed 2 years ago by zerock

getting these in the debug window a lot..i find it odd that my user is not evands :P

00:53:14: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/cmd/cmdproc.c:112:show_debug_cmd() C: 000: PNG 00:53:14: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:431:write_impl() name=notification server 00:53:14: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:452:write_impl() stream=0xb699df0 00:53:14: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:456:write_impl() bytes_written=5 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:71:read_cb() begin 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:75:read_cb() conn=0xb334008,name=notification server 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:494:read_impl() name=notification server 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:508:read_impl() stream=0xb699df0 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:518:read_impl() bytes_read=8 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_cmd_server.c:95:parse_impl() begin 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_cmd_server.c:97:parse_impl() conn=0xb334008,name=notification server 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/cmd/cmdproc.c:112:show_debug_cmd() S: 000: QNG 40 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/cmd/cmdproc.c:288:msn_cmdproc_process_cmd() begin 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/cmd/cmdproc.c:358:msn_cmdproc_process_cmd() end 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_cmd_server.c:160:parse_impl() end 00:53:15: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:107:read_cb() end 00:53:40: adium_input_add(): Adding input 2 on fd 18 00:53:40: updateSocketForSourceInfo: <SourceInfo 0xb417260: Socket 0xb5ee150: fd 18; timer_tag 0; read_tag 25; write_tag 251> 00:53:40: socketCallback(): Calling the ioFunction for b5ee150, callback type 8 (writing: tag is 251) 00:53:40: adium_source_remove(): Removing for fd 18 [sourceInfo b417260]: tag is 251 (timer 0, read 25, write 251) 00:53:40: adium_source_remove(): Calling updateSocketForSourceInfo(b417260) 00:53:40: updateSocketForSourceInfo: <SourceInfo 0xb417260: Socket 0xb5ee150: fd 18; timer_tag 0; read_tag 25; write_tag 0> 00:53:44: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/cmd/cmdproc.c:112:show_debug_cmd() C: 000: PNG 00:53:44: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:431:write_impl() name=notification server 00:53:44: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:452:write_impl() stream=0xb699df0 00:53:44: (Libpurple: msn) /Users/evands/pidgin-for-adium/libpurple/protocols/msn_pecan/io/pecan_node.c:456:write_impl() bytes_written=5

  Changed 2 years ago by aragost

Same here. looks like they get updated (only?) when someone updates his display picture/personal message

follow-up: ↓ 6   Changed 2 years ago by David Munch

For some reason only som MSN icons are missing. And for those contacts that got their picture yanked, it also removed it from the Adressbook.

Some of them are comming back now on the contactlist, but it doesnt update the adressbook entries - Neither if they update their buddyicon, and the contact has been linked with the adressbook card. (A least my early testing shows it)

in reply to: ↑ 5   Changed 2 years ago by David Munch

Replying to David Munch:

Neither if they update their buddyicon, and the contact has been linked with the adressbook card. >(A least my early testing shows it)

Skip that. Seems like the adressbook links got destroyed for some users for some reason? Updating the link, and then getting the user to update the bodyicon restores the picture in the Adressbook.

  Changed 2 years ago by jas8522

  • pending changed from 0 to 1
  • milestone set to Needs feedback from users

David Munch: I believe that was because our AB synchronization was not working properly before b5 anyway.

The requirement to re-download user icons is because of the switch to MSN-Pecan. In my case, all of the users that have icons eventually downloaded without any problem, and when a user switches their icon, it also downloads pretty much instantly.

zerock: Did they all eventually download?

  Changed 2 years ago by aragost

jas point is true - BUT! - does this happen with msn live / msn official live client for mac? At the first connection, does the user see a horde of greenblue bowling pins or is there a first time download?

  Changed 2 years ago by David Munch

Here after ~6 hours of runtime, I still have about 50% of my MSN users without a picture. Some of them is in the Adressbook, some of them arent.

  Changed 2 years ago by zacw

  • owner changed from nobody to felipec
  • component changed from MSN to msn-pecan
  • milestone changed from Needs feedback from users to Waiting on msn-pecan

  Changed 2 years ago by zacw

  • pending changed from 1 to 0

  Changed 2 years ago by felipec

I think the fact that not all contacts get updated in one go is a bug present both in msnp9 and msn-pecan. However, it's hard to notice unless you remove your buddy icons, or, in this case switch the protocol plug-in.

The only way to keep the old behavior is to make msn-pecan replace the old protocol (have the same id).

Also, there's really no need to download the icons again, that's a limitation of libpurple.

follow-up: ↓ 14   Changed 2 years ago by chuzwuzza

This seems to be the same issue as the bug I filed here:  http://trac.adiumx.com/ticket/10250

It's not simply a matter of waiting and watching. It's been several days now, and some buddies still do not have icons. I'm not sure what if anything they have in common. It seems to be random.

in reply to: ↑ 13 ; follow-up: ↓ 15   Changed 2 years ago by David Munch

Replying to chuzwuzza:

It's not simply a matter of waiting and watching. It's been several days now, and some buddies still do not have icons. I'm not sure what if anything they have in common. It seems to be random.

1.3b5 hasnt been out for days!

in reply to: ↑ 14   Changed 2 years ago by chuzwuzza

Replying to David Munch:

Replying to chuzwuzza:

It's not simply a matter of waiting and watching. It's been several days now, and some buddies still do not have icons. I'm not sure what if anything they have in common. It seems to be random.

1.3b5 hasnt been out for days!

I was referring to the ticket I lodged before 1.3b5 came out. I initially compiled the SVN version from when msn-pecan was merged. The bug has been present since then.

follow-up: ↓ 18   Changed 2 years ago by felipec

That's why I said it's a bug.

Has this been running for days continuously? If so, please try logging out and in again.

follow-up: ↓ 19   Changed 2 years ago by jas8522

I made a guess that opening the get info window might trigger the retrieval of an icon, and asked chuzwuzza to attach a debug log of that action. It can be found in #10250 which I'm closing as a duplicate of this since this one is already placed in the appropriate milestone and has more activity.

in reply to: ↑ 16   Changed 2 years ago by chuzwuzza

Replying to felipec:

That's why I said it's a bug. Has this been running for days continuously? If so, please try logging out and in again.

No, it hasn't been running continuously. I generally have it running for periods of maybe 5-6 hours.

I'm sorry if I wasn't clear, I was just reading your comment that it was present in both msnp9 and msn-pecan, and thought I'd throw in that I never had this problem with the old code, even after a fresh install with no cached buddy icons.

Anyway, aside from this, I'm definitely enjoying msn-pecan. Good work :)

in reply to: ↑ 17   Changed 2 years ago by chuzwuzza

Replying to jas8522:

I made a guess that opening the get info window might trigger the retrieval of an icon, and asked chuzwuzza to attach a debug log of that action. It can be found in #10250 which I'm closing as a duplicate of this since this one is already placed in the appropriate milestone and has more activity.

For what it's worth, getting info hasn't caused the icon to be downloaded unfortunately

  Changed 2 years ago by visionkrew

My findings related to the above problem are:

1. When you sign in to MSN (so you were offline before), Adium doesn't even try to download your online buddies' current display pictures. The cached DPs will be shown, if they exist (if some of your buddies changed DPs while you were offline, you won't receive those updated DPs - you'll see the cached (and possibly outdated) ones.

2. If your online buddies change DPs while you are online, you will receive the updated DPs almost instantly.

3. If you are online and one of your buddies signs in (who was offline before), you will receive his/her actual DP almost instantly.

When signing in (so it would be time for Adium to fetch the online users' DPs), Console log shows:

Jul 5 18:56:56 xyz [0x0-0xb40b4].com.adiumX.adiumX[1116]: ** (process:1116): CRITICAL **: purple_signal_emit_vargs: assertion `instance_data != NULL' failed
Jul 5 18:57:22: --- last message repeated 66 times ---
Jul 5 18:57:02 xyz [0x0-0xb40b4].com.adiumX.adiumX[1116]: ** (process:1116): CRITICAL **: purple_imgstore_get_size: assertion `img != NULL' failed
Jul 5 18:57:02 xyz [0x0-0xb40b4].com.adiumX.adiumX[1116]: ** (process:1116): CRITICAL **: purple_imgstore_get_data: assertion `img != NULL' failed.

Steps to reproduce the problem:

1. Quit Adium
2. Delete ~/Library/Caches/Adium/Default
3. Start adium, and sign in to MSN
4. WAIT - you won't receive your currently online contacts DPs unless they sign out and sign in again, or they change DPs.

Are you sure that this is a bug in msn-pecan? I tried  these unofficial builds (they don't use msn-pecan but an MSNP14-enabled version of libpurple), and the three latest builds (based on Adium SVN checkouts as well) show exactly the same symptoms. So no msn-pecan, but same problems.

  Changed 2 years ago by felipec

Good, I can fix the issue but it's good to remember this is not specific to msn-pecan.

  Changed 2 years ago by Dimmuxx

@felipec

Oh, so this issue exists in libpurple's msn implementation too? Is it just for msnp14/15 or for msnp9 too?

  Changed 2 years ago by visionkrew

I believe that the source of the problem is NOT msn-pecan NOR libpurple. Adium switched to msn-pecan at r24049. Builds based on svn checkouts before r24049 used MSNP9...DPs and the related functionality is working OK in those versions.

@Dimmuxx

In your first public MSNP14-enabled unofficial build (which is based on r24028 from trunk), DPs are working as expected (so no libpurple problem)!! But your later builds (based on later trunk revisions) show the same symptoms as the official betas (despite libpurple is quite the same as in your first, symptomless build).

I think the problem was introduced in SVN with the changes made for integrating msn-pecan, but I don't think the problem is with msn-pecan (or libpurple) itself.

Possibly the bug is lying somewhere in the changesets between r24041 and r24049.

  Changed 2 years ago by visionkrew

@Dimmuxx

Additinal info: I tried moving the libpurple.framework from your first build (r24028) to the last one (r24179). Now DPs are working again in r24179!

  Changed 2 years ago by felipec

I'm confused, which versions of msnp9 have this bug?

By, DPs are working again, you mean: DPs are updated when you sign in?

  Changed 2 years ago by visionkrew

@felipec

I only saw this bug in Adium versions built with msn-pecan or msnp14-enabled custom libpurple.

Yes, exactly. DPs get updated when I sing in. This means that Dimmuxx used different libpurple versions to build his custom Adium versions. And his first libpurple version doesn't have this bug.

  Changed 2 years ago by Dimmuxx

@visionkrew & felipec

Ah, 24028 is the last build I did without felipec's updated request buddy icon code so something in that broke the code.

  Changed 2 years ago by visionkrew

@ Dimmuxx

Do you have the diffs for that code?

  Changed 2 years ago by Dimmuxx

  Changed 2 years ago by Kaepora

I'd also like to report that my MSN display pictures seems to be only see-able by people using either Pidgin or Adium. People using Windows Live Messenger seem to be unable to see it.

Changed 2 years ago by melvinm

  Changed 2 years ago by felipec

Aha, how I understand.

This is what is causing the issue:  http://developer.pidgin.im/viewmtn/revision/info/075bff91d9cbcfd6f59c270802c5bffeb98c3b50

The problem is that contact_set_object is usually called before contact_set_state, so the contact seems offline when doing the display picture request.

That was a temporal fix for the crash in msnp15, later on I found the real issue.

I should remind me myself the policy for msn stuff: don't pre-handle errors in the client; if the server can't get the display picture for offline users, it's the server that should generate the error and the client should handle it.

I've reverted the change.

  Changed 2 years ago by Dimmuxx

@felipec

Are you gonna make a patch for msnp15 too?

  Changed 2 years ago by felipec

dimmuxx: there's no patch, it's simply a revert. That would of course cause the crash to happen again in msnp15, but I already explained what needs to be fixed there. I'm not going to continue working on Pidgin anymore.

  Changed 2 years ago by felipec

  • status changed from new to assigned
  • milestone changed from Waiting on msn-pecan to Adium X 1.3

This should be fixed in the master branch of msn-pecan, ready for a 1.3b8.

  Changed 2 years ago by chuzwuzza

After updating to the latest SVN, the remaining buddy icons that never downloaded before, finally downloaded and displayed almost instantly.

It's a refreshing change to see MSN bugs being fixed :)

  Changed 2 years ago by felipec

That's my job ;)

  Changed 2 years ago by Robby

  • status changed from assigned to closed
  • resolution set to fixed
  • milestone changed from Adium X 1.3 to Waiting on msn-pecan

Let's assume it's fixed.
Thanks for reporting chuzwuzza! :)

  Changed 2 years ago by evands

(In [24366]) libpurple im.pidgin.pidgin 2.5.0mtn @ [65e73f7e5] with msn-pecan 0.0.14-54-g3308354.

Fixes several msn-pecan tickets: Fixes #10278. Fixes #10348. Fixes #10263. Adds debug logging for gadu-gadu Get Info (Refs #10225 - debug logging needed)

follow-up: ↓ 40   Changed 2 years ago by Catfish_Man

  • status changed from closed to reopened
  • resolution fixed deleted

Got a report of this on irc in b9

in reply to: ↑ 39   Changed 2 years ago by aragost

Replying to Catfish_Man:

Got a report of this on irc in b9

Worksforme, for what is worth.

follow-up: ↓ 42   Changed 2 years ago by Kaepora

I should not that the display pics DO show but DO NOT WORK for users using Windows Live Messenger on Microsoft Windows.

in reply to: ↑ 41 ; follow-up: ↓ 43   Changed 2 years ago by alosii

Replying to Kaepora:

I should not that the display pics DO show but DO NOT WORK for users using Windows Live Messenger on Microsoft Windows.

I also have this problem using the latest beta (1.3b9). Some of my contacts using Windows Live Messenger will not see my display picture. I've tested with versions (Windows Live Messenger 8.1 up to 8.5.13)

in reply to: ↑ 42   Changed 2 years ago by alosii

Replying to alosii:

Replying to Kaepora:

I should not that the display pics DO show but DO NOT WORK for users using Windows Live Messenger on Microsoft Windows.

I also have this problem using the latest beta (1.3b9). Some of my contacts using Windows Live Messenger will not see my display picture. I've tested with versions (Windows Live Messenger 8.1 up to 8.5.13)

This and  http://trac.adiumx.com/ticket/10411 is probably related

  Changed 2 years ago by felipec

  • status changed from reopened to closed
  • resolution set to fixed

This is already fixed (receiving display pictures), what is not working yet is sending them, which has a different ticket: ticket #10411.

  Changed 21 months ago by anonymous

  • milestone Waiting on msn-pecan deleted

Milestone Waiting on msn-pecan deleted

  Changed 15 months ago by zacw

  • component changed from msn-pecan to Service/Other

Removing 'msn-pecan' component.

Note: See TracTickets for help on using tickets.