[mythtv-commits] mythtv/master commit: b96744811 by Gavin Hurlbut (Beirdo)

MythTV noreply at mythtv.org
Mon Feb 27 05:04:58 UTC 2012


      Author:  Gavin Hurlbut <ghurlbut at mythtv.org>
 Change Date:  2012-02-26T21:04:21-08:00
   Push Date:  2012/02/26 21:04:35 -0800
  Repository:  mythtv
      Branch:  master
New Revision:  b967448111b8b27f6b5552f9499e3d5e25015b3a
   Changeset:  https://github.com/MythTV/mythtv/commit/b96744811

Log:

Fix the faulty exit code 139 issue in Ubuntu systems

I think it might be an oddity in eglibc, but the status return from waitpid()
is buggered sometimes for signalled children.  Rather than showing up as signal
11 for a segfault, it shows up as an exit value of 139.  This is the most
common offender, but signal 6 (exit value 134) shows up sometimes as well.

The workaround limits the valid exit values of the child to being 0-127.  An
exit value above that is assumed to be a buggered up signal return and is
byteswapped.

As this is most prevalent with mythcommflag, the workaround is only active
for mythcommflag (for now).  If other MythSystem calls need this added, we
can add it later.

Modified:

   mythtv/libs/libmythbase/mythsystem.cpp
   mythtv/libs/libmythbase/mythsystem.h
   mythtv/libs/libmythbase/system-unix.cpp
   mythtv/libs/libmythtv/jobqueue.cpp



More information about the mythtv-commits mailing list