|
a/src/mediaserver/cdplugins/uprcl/uprcl-app.py |
|
b/src/mediaserver/cdplugins/uprcl/uprcl-app.py |
|
... |
|
... |
43 |
_outfile = os.fdopen(os.dup(1), "w")
|
43 |
_outfile = os.fdopen(os.dup(1), "w")
|
44 |
os.close(1)
|
44 |
os.close(1)
|
45 |
fd = os.open("/dev/null", os.O_WRONLY)
|
45 |
fd = os.open("/dev/null", os.O_WRONLY)
|
46 |
# print("UPRCL-APP: got fd %d for /dev/null" % fd, file=sys.stderr)
|
46 |
# print("UPRCL-APP: got fd %d for /dev/null" % fd, file=sys.stderr)
|
47 |
|
47 |
|
|
|
48 |
# The normal system exit gets stuck on waiting for the bottle
|
|
|
49 |
# thread. We have nothing to really cleanup, so set up forced exit
|
|
|
50 |
# handler
|
|
|
51 |
def doexit(val):
|
|
|
52 |
os._exit(val)
|
|
|
53 |
|
48 |
# Func name to method mapper
|
54 |
# Func name to method mapper
|
49 |
dispatcher = cmdtalkplugin.Dispatch()
|
55 |
dispatcher = cmdtalkplugin.Dispatch()
|
50 |
# Pipe message handler
|
56 |
# Pipe message handler
|
51 |
msgproc = cmdtalkplugin.Processor(dispatcher, outfile=_outfile)
|
57 |
msgproc = cmdtalkplugin.Processor(dispatcher, outfile=_outfile, exitfunc=doexit)
|
52 |
|
58 |
|
53 |
@dispatcher.record('trackuri')
|
59 |
@dispatcher.record('trackuri')
|
54 |
def trackuri(a):
|
60 |
def trackuri(a):
|
55 |
# This is used for plugins which generate temporary local urls
|
61 |
# This is used for plugins which generate temporary local urls
|
56 |
# pointing to the microhttpd instance. The microhttpd
|
62 |
# pointing to the microhttpd instance. The microhttpd
|