multimon crashes Xorg when window is closed

Bug #48199 reported by Casandro
12
Affects Status Importance Assigned to Milestone
multimon (Debian)
Fix Released
Unknown
multimon (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Multimon reliably crashes Xorg when running on a mga display. I'm using a multi-seated setup with 2 Matrox cards.

Revision history for this message
Casandro (casandro-lion) wrote :

This bug seems to be driver independand. It also happens on my laptop.

XOrg crashes when the scope window of multimon is closed.

Revision history for this message
Matthew Gates (matthew-porpoisehead) wrote :

I also found this. Killing the program from another shell doesn't cause the error - just when the scope window is closed by clicking the close window dialog.

It is a problem with the scope function. A simple way to prevent the error is to compile out the scope function: In multimon.h, change the #define ALL_DEMOD removing the scope module (monfix.patch)

It's not a perfect fix, but the important function of the program is restored (genfix.patch)

In the gen.c file there is also a bug which prevents creation of non-raw format files. Fix attached attached.

Revision history for this message
Matthew Gates (matthew-porpoisehead) wrote :

Now for the genfix patch to enable saving in non-raw formats.

Bryce Harrington (bryce)
Changed in xorg:
assignee: nobody → bryceharrington
status: New → Fix Committed
status: Fix Committed → In Progress
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

I don't see how this is related to X, if the patch is for multimon..

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

..or is the original post about "multimonitor with mga", and the patch for "multimon, the linux radio decoder"? :)

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Ok, unassigning and refiling against multimon.

Changed in xorg:
assignee: bryceharrington → nobody
Revision history for this message
Max Bowsher (maxb) wrote :

Setting "In Progress" => "Confirmed" as the bug hasn't had an assignee in over a year.

Confirming that it happens to me too.

Changed in multimon:
status: In Progress → Confirmed
Revision history for this message
dl9sau (thomas-x-berg) wrote :
Download full text (3.4 KiB)

I've traced the problem, and found out that in xdisplay.c the code
leads to a kil(-1, SIGTERM) [in fact 2^32-1).
This kills all processes down to init (or at least all processes owned by a user. And you know,
as soon as your session-manager dies, it's the end of your session ;)

Tom Sailor (the author) did actually fix the problem in his upstream version at
  http://www.baycom.org/~tom/ham/linux/multimon.tar.bz2
and I confirm that his solution fixes the problem.

Tom's fix in that version is:
diff -Naur multimon-1.0/ xdisplay.c
--- multimon-1.0/xdisplay.c 2005-07-26 21:09:38.000000000 +0200
+++ xdisplay.c 2009-03-24 19:07:58.000000000 +0100
@@ -1,8 +1,8 @@
 /*
  * xdisplay.c -- actually displaying things
  *
- * Copyright (C) 1996
- * Thomas Sailer (<email address hidden>, <email address hidden>)
+ * Copyright (C) 1996, 2009
+ * Thomas Sailer (<email address hidden>)
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -336,6 +336,8 @@
 {
        if (cnum < 0 || cnum >= NUMCLI)
                return;
+ if (!cli[cnum].used)
+ return;
        kill(cli[cnum].pid, SIGTERM);
 }

@@ -403,6 +405,8 @@

        if (cnum < 0 || cnum >= NUMCLI)
                return 0;
+ if (!cli[cnum].used)
+ return 0;
        i = read(cli[cnum].cmdfd, &c, 1);
        if (i < 0 && errno != EAGAIN) {
                perror("read"); ...

Read more...

Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

This bug was fixed in the package multimon 1.0-5, which is scheduled to be released in Ubuntu "Lucid".

I have also made available a build of multimon 1.0-5 for Ubuntu Karmic in my PPA:
    https://launchpad.net/~kamalmostafa/+archive/multimon-1.0-5

Thanks to everyone involved with the diagnosis and resolution of this issue.

-----

multimon (1.0-5) unstable; urgency=low

  * Include newer gen.c and xdisplay.c versions from Thomas Sailer
    dated 2009-03-24. (Closes: #247857)
  * Include Joerg Woelke's patch to run sox correctly. (Closes: #536228)
  * depend upon sox. (Closes: #555391)
  * The man pages added in 1.0-4 must help,
    no recent complaints. (Closes: #205003)
 -- Ubuntu Archive Auto-Sync < <email address hidden>> Sat, 05 Dec 2009 21:32:06 +0000

Changed in multimon (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
dl9sau (thomas-x-berg) wrote : Re: [Bug 48199] Re: multimon crashes Xorg when window is closed

Yes, the author applied my patch to his upstream version right after my
complain.

On 2010-02-13 01:35:36 -0000, Kamal Mostafa <email address hidden>
wrote in <email address hidden>:
> This bug was fixed in the package multimon 1.0-5, which is scheduled to
> be released in Ubuntu "Lucid".
>
> I have also made available a build of multimon 1.0-5 for Ubuntu Karmic in my PPA:
> https://launchpad.net/~kamalmostafa/+archive/multimon-1.0-5
>
> Thanks to everyone involved with the diagnosis and resolution of this
> issue.
>
> -----
>
> multimon (1.0-5) unstable; urgency=low
>
> * Include newer gen.c and xdisplay.c versions from Thomas Sailer
> dated 2009-03-24. (Closes: #247857)
> * Include Joerg Woelke's patch to run sox correctly. (Closes: #536228)
> * depend upon sox. (Closes: #555391)
> * The man pages added in 1.0-4 must help,
> no recent complaints. (Closes: #205003)
> -- Ubuntu Archive Auto-Sync < <email address hidden>> Sat, 05 Dec 2009 21:32:06 +0000
>
> ** Changed in: multimon (Ubuntu)
> Status: Confirmed => Fix Released
>
> --
> multimon crashes Xorg when window is closed
> https://bugs.launchpad.net/bugs/48199
> You received this bug notification because you are a direct subscriber
> of the bug.

Changed in multimon (Debian):
status: Unknown → 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.