Opened 10 years ago

Closed 10 years ago

Last modified 4 years ago

#8062 closed defect (fixed)

Pidgin crashes when setting /pidgin/blist/sort_type on plugin_unload.

Reported by: Freakazoid Owned by:
Milestone: Component: plugins
Version: 2.5.3 Keywords:
Cc:

Description

Hi, I wrote a plugin that implements a new sort method in pidgin. However I would like to reset the original sort method when the plugin gets unloaded using purple_prefs_set_string. That causes the buddy list to be redrawed which crashes pidgin for one of my friends. This occurs on Windows and Linux. I don't really know how to reproduce the crash but using her .purple directory does it.

I wrote a minimalistic plugin which just tries to set the preference and crashes Pidgin this way.

Attachments (5)

purple.tar.gz (415.0 KB) - added by Freakazoid 10 years ago.
sort_type_crasher.c (2.6 KB) - added by Freakazoid 10 years ago.
debug.log (14.0 KB) - added by Freakazoid 10 years ago.
backtrace.txt (3.1 KB) - added by Freakazoid 10 years ago.
pidgin.RPT (5.4 KB) - added by Freakazoid 10 years ago.

Download all attachments as: .zip

Change History (9)

Changed 10 years ago by Freakazoid

Changed 10 years ago by Freakazoid

Changed 10 years ago by Freakazoid

Changed 10 years ago by Freakazoid

Changed 10 years ago by Freakazoid

comment:1 Changed 10 years ago by darkrain42

The backtraces look like it's crashing because you're trying to redraw the buddy list during shutdown when the plugin is unloaded and, at that point, the buddyicons subsystem has already been shut down.

You should probably not call the redraw function if your plugin is unloading because pidgin is quitting.

comment:2 Changed 10 years ago by darkrain42

  • Component changed from pidgin (gtk) to plugins
  • Status changed from new to pending

It looks like the only way to determine that you shouldn't set that preference or do other things at shutdown is to attach to the quitting signal emitted by the core (purple_get_core()) and, after noticing that, set a global variable.

comment:3 Changed 10 years ago by Freakazoid

  • Resolution set to fixed
  • Status changed from pending to closed

That did the trick. Thank you. I could set the preference in the quitting signal callback function. ;)

comment:4 Changed 4 years ago by Daniel Atallah <datallah@…>

(In [f26d96f03176]):
Update NSS Default Cipher suites

  • Use Firefox as a base reference, include some previously used stuff and enable various PFS certificates
  • The following certificates were previously enabled (when using NSS 3.17.1) and are no longer enabled:
    • Various using RC2 and MD5
    • TLS_DHE_DSS_WITH_AES_256_CBC_SHA
    • TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
    • TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
    • TLS_DHE_DSS_WITH_RC4_128_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
    • TLS_RSA_WITH_RC4_128_SHA (this is probably the most controversial removal)
    • TLS_RSA_WITH_RC4_128_MD5
    • TLS_DHE_RSA_WITH_DES_CBC_SHA
    • TLS_DHE_DSS_WITH_DES_CBC_SHA

Refs #8062, Fixes #16262

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!