pidgin: signals_test.pl perl plugin causes segfault on amd64

Bug #157973 reported by jkao
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pidgin (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Binary package hint: pidgin

Ubuntu 7.10 (gutsy) on amd64
Thinkpad X61s w/ 4GB RAM

I have a pidgin perl plugin script that functions correctly on a Linux gentoo 32-bit system and a Windows system, but fails on ubuntu 7.10 on amd64. However, rather than risk debugging my own code, I ran a regression against pidgin's default signals_test.pl and encountered a similar issue.

Installing the pidgin signals_test.pl test perl plugin causes pidgin to die when it connects with a segmentation fault.

signals_test.pl is in the pidgin sources in libpurple/plugins/perl/scripts or can be downloaded directly from the pidgin source repository (link for 2.2.1) at:

http://developer.pidgin.im/viewmtn/revision/downloadfile/07a10ba814f710b8fce443717cd92b67ea1d5717/libpurple/plugins/perl/scripts/signals-test.pl

Steps to reproduce:

(1) Copy signals_test.pl int ~/.purple/plugins
(2) Start pidgin
(3) Select Tools->Plugins
(4) Activate the plugin Perl:Signals Test Script in Perl
(5) Log out and log in to an IM account

Other notes:

Testing with variations of signals_test.pl and my own script, registering callbacks seems to function properly, however accessing certain get_* methods off of objects seems to cause a segfault. In particular, most methods that return structs seem to function properly, but methods that return char* seem to segfault.

Tags: amd64
Revision history for this message
jkao (jmk17) wrote :
Revision history for this message
jkao (jmk17) wrote :
Revision history for this message
jkao (jmk17) wrote :
Revision history for this message
Andreas Moog (ampelbein) wrote : Old standing report

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Thank you for taking the time to report this bug and helping to make
Ubuntu better. You reported this bug a while ago and there hasn't been
any activity in it recently. We were wondering is this still an issue
for you? Can you try with latest Ubuntu release? Thanks in advance.

 status incomplete
 assignee andreas-moog
 subscribe

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAki67ZAACgkQ06FgkPZwicRdigCfavxuxSksnc2PGZ2mQG8SfLTi
omoAn0HKANGsU/QiKRyZo7nqMxYoXVLR
=F3vZ
-----END PGP SIGNATURE-----

Changed in pidgin:
assignee: nobody → andreas-moog
status: New → Incomplete
Revision history for this message
jkao (jmk17) wrote :

Yes, the problem still exists in Ubuntu 8.04's Pidgin 2.5.0 with the same symptoms. Would you like me to generate a new set of backtraces and logs?

Revision history for this message
Daniel T Chen (crimsun) wrote :

Is this symptom still reproducible in 8.10?

Revision history for this message
jkao (jmk17) wrote :

Sorry for the delay in responding. Yes, this symptom is still reproducible in 8.10 with the identical behavior.

On amd64, pidgin segfaults whenever signals-test.pl is active and a signal is triggered (e.g. message sent/received). No perl plugins that use signals function (same symptom).

In a 32-bit chroot, signals-test.pl works fine.

Would you like a new set of backtraces and logs?

Revision history for this message
psylem (subnetjet) wrote :

This is related to the following Pidgin bug...
http://www.nabble.com/-7404%3A-trivial-chat-invited-signal-handler-causes-crash-td20225976.html

Can anyone figure out a workaround for this while we wait for the real fix?

Revision history for this message
psylem (subnetjet) wrote :

I can confirm that the bug has been fixed up stream in Pidgin release 2.5.4. But even Ubuntu 9.04 will not have this version. You'll have to upgrade manually.

I was able to successfully upgrade without loosing any functionality of plugins available from the official ubuntu release, as well as the SIPE plugin I had previously manually compiled. I was a little worried about breaking the SIPE plugin because I needed it for access to my corporate Office Communicator account, but as the Pidgin crew state, only major version upgrades should break plugins. In my experience it's safe to upgrade using the package from http://www.getdeb.net/release/3736 if you really need perl plugin support on an AMD64 machine. I'm using Hardy and upgraded with the following steps:
1. Backed up my precompiled SIPE plugin binaries (/usr/lib/pidgin/libsipe.so and /usr/lib/pidgin/libsipe.la)
2. Shutdown and uninstalled Pidgin (along with all the plugins, taking note of what plugins I was loosing)
3. Downloaded the 4 required packages for Pidgin version 2.5.4 from getdeb.net
4. Installed downloaded packages in the following order: pidgin-data; libpurple0; libpurple-bin; pidgin
5. Reinstalled previously removed plugins from official Ubuntu repository
6. Restored my SIPE binaries back into /usr/lib/pidgin/ overwriting whatever the official ubuntu pidgin-sipe plugin created in there

Pidgin started as normal with my Microsoft LCS/OCS account still intact. All other plugins worked correctly and none of my settings were lost (phew!). Most importantly Perl plugin support now works!

Andreas Moog (ampelbein)
Changed in pidgin:
assignee: andreas-moog → nobody
Revision history for this message
Sebastien Bacher (seb128) wrote :

the new version is in jaunty now

Changed in pidgin (Ubuntu):
importance: Undecided → Medium
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.