crash in preferences dialog when testing to see if port is open/closed

Bug #407832 reported by David Nielsen
80
This bug affects 11 people
Affects Status Importance Assigned to Milestone
Transmission
Fix Released
Unknown
transmission (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Binary package hint: transmission

This crash occures when one switches networks using networkmanager or loses network connection. It seems Transmission is not handling such situations with the utmost grace

ProblemType: Crash
Architecture: i386
CrashCounter: 1
Date: Sun Aug 2 00:35:13 2009
DistroRelease: Ubuntu 9.10
ExecutablePath: /usr/bin/transmission
Package: transmission-gtk 1.73-1ubuntu1
ProcCmdline: transmission
ProcEnviron:
 LANG=da_DK.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-4.23-generic
SegvAnalysis:
 Segfault happened at: 0x173a58 <g_type_check_instance_cast+40>: mov (%esi),%edx
 PC (0x00173a58) ok
 source "(%esi)" (0x40594000) not located in a known VMA region (needed readable region)!
 destination "%edx" ok
SegvReason: reading unknown VMA
Signal: 11
SourcePackage: transmission
StacktraceTop:
 g_type_check_instance_cast ()
 ?? ()
 g_cclosure_marshal_VOID__BOOLEAN ()
 g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
 ?? () from /usr/lib/libgobject-2.0.so.0
Title: transmission crashed with SIGSEGV in g_type_check_instance_cast()
Uname: Linux 2.6.31-4-generic i686
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare

Revision history for this message
David Nielsen (davidnielsen-deactivatedaccount) wrote :
Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt (retraced)

StacktraceTop:IA__g_type_check_instance_cast (type_instance=0x40594000,
onPortTested (core=0x8876858, isOpen=0, vdata=0x9c04460)
IA__g_cclosure_marshal_VOID__BOOLEAN (closure=0x9c03720,
IA__g_closure_invoke (closure=0x9c03720, return_value=0x0,
signal_emit_unlocked_R (node=<value optimized out>,

Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt (retraced)
Changed in transmission (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
visibility: private → public
Revision history for this message
Charles Kerr (charlesk) wrote : Re: transmission crashed with SIGSEGV in g_type_check_instance_cast()

I can't reproduce this, but given the crash report and David's description, it sounds like this bug *should* be activated by switching networks or losing connectivity right after clicking the "Test Port" button in the Preferences dialog.

Could someone else give this test a try and see if they can reproduce this?

David, does the problem still persist in 1.74 (or 1.75, if it's been packaged by the time you read this)?

Revision history for this message
Charles Kerr (charlesk) wrote :

We'd like to figure out what's causing this bug for you, but we haven't heard back from you in a while. Could you please provide the requested information? Thanks!

Revision history for this message
ogc (hackrez) wrote :

I am able to reproduce like this:
1) start transmission
2) press test port
3) wait till you get port is closed (it is for me)
4) disconnect your lan cable
5) press test before ubuntu realizes you are disconnected
6) it should say testing...
7) close preferences windows
8) open it again and press test, it crashes

I'am using latest version available in karmic its 1.75-0ubuntu1

Revision history for this message
Charles Kerr (charlesk) wrote :

Fixed upstream in trunk.

The one-liner patch:

Index: tr-prefs.c
===================================================================
--- tr-prefs.c (revision 9261)
+++ tr-prefs.c (working copy)
@@ -1304,7 +1304,8 @@
     gtk_widget_set_sensitive( data->portButton, FALSE );
     gtk_widget_set_sensitive( data->portSpin, FALSE );
     gtk_label_set_markup( GTK_LABEL( data->portLabel ), _( "<i>Testing...</i>" ) );
- data->portTag = g_signal_connect( data->core, "port-tested", G_CALLBACK(onPortTested), data );
+ if( !data->portTag )
+ data->portTag = g_signal_connect( data->core, "port-tested", G_CALLBACK(onPortTested), data );
     tr_core_port_test( data->core );
 }

Changed in transmission (Ubuntu):
status: New → Confirmed
Revision history for this message
Charles Kerr (charlesk) wrote :
Changed in transmission:
status: Unknown → Fix Released
Charles Kerr (charlesk)
summary: - transmission crashed with SIGSEGV in g_type_check_instance_cast()
+ crash in preferences dialog when testing to see if port is open/closed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package transmission - 1.75-0ubuntu2

---------------
transmission (1.75-0ubuntu2) karmic; urgency=low

  * debian/transmission-daemon.default:
    - remove --auth from OPTIONS (LP: #444005)
  * debian/patches/21_onPortTested.diff:
    - crash in preferences dialog when testing to see if port is open/closed (LP: #407832)
  * debian/patches/23_tr_torrentNext.diff:
    - transmission crashed with SIGSEGV in tr_torrentNext() (LP: #451554)
  * debian/patches/24_tr_torrentDeleteLocalData_do_move.diff:
    - fix potential data loss.

 -- Krzysztof Klimonda <email address hidden> Mon, 05 Oct 2009 22:53:01 +0200

Changed in transmission (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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