diff --git a/anaconda b/anaconda
index 0e0fdba..0eb90c4 100755
--- a/anaconda
+++ b/anaconda
@@ -31,6 +31,7 @@
# This toplevel file is a little messy at the moment...
import atexit, sys, os, re, time, subprocess
+import threading
from tempfile import mkstemp
# keep up with process ID of the window manager if we start it
wm_pid = None
@@ -963,9 +964,10 @@ if __name__ == "__main__":
# sets yum's multilib_policy to "all" (as opposed to
"best")
ksdata.packages.multiLib = opts.multiLib
+ cur_thread_id = threading.current_thread().ident
from pyanaconda import exception
# comment out the next line to make exceptions non-fatal
- anaconda.mehConfig = exception.initExceptionHandling(anaconda)
+ anaconda.mehConfig = exception.initExceptionHandling(anaconda, cur_thread_id)
# add our own additional signal handlers
signal.signal(signal.SIGUSR1, lambda signum, frame:
Relying on thread ID kind of concerns me, given the following from the
python docs:
Thread identifiers may be recycled when a thread exits and another
thread is created. The identifier is available even after the thread
has exited.
However in this one case (the main thread), I think we can get away with
it. This was one reason why I added the ThreadManager object, to be
able to reference via name instead of ID.
- def handleException(self, (ty, value, tb), obj):
+ def run_handleException(self, args_tuple):
+ """
+ Helper method with one argument only so that it can be registered
+ with GLib.idle_add() to run on idle or called from a handler.
- def run_handleException_on_idle(args_tuple):
- """
- Helper function with one argument only so that it can be registered
- with GLib.idle_add() to run on idle.
+ @param args_tuple: ((ty, value, tb), obj)
- @param args_tuple: ((ty, value, tb), obj)
+ """
We've now got so much shipping around of (ty, val, tb) and then
sometimes obj that I wonder if we should just go ahead and pack them up
into something more handy. A NamedTuple
(
http://docs.python.org/2/library/collections.html#collections.namedtuple)
might be just the thing to use.
- Chris