hgext/zeroconf/__init__.py
branchstable
changeset 14104 23fc62e0a960
parent 12076 49463314c24f
child 16683 525fdb738975
equal deleted inserted replaced
14051:2b1226693c70 14104:23fc62e0a960
    25 '''
    25 '''
    26 
    26 
    27 import socket, time, os
    27 import socket, time, os
    28 
    28 
    29 import Zeroconf
    29 import Zeroconf
    30 from mercurial import ui, hg, encoding, util
    30 from mercurial import ui, hg, encoding, util, dispatch
    31 from mercurial import extensions
    31 from mercurial import extensions
    32 from mercurial.hgweb import hgweb_mod
    32 from mercurial.hgweb import hgweb_mod
    33 from mercurial.hgweb import hgwebdir_mod
    33 from mercurial.hgweb import hgwebdir_mod
    34 
    34 
    35 # publish
    35 # publish
   164     for name, path in getzcpaths():
   164     for name, path in getzcpaths():
   165         if path == source:
   165         if path == source:
   166             return name.encode(encoding.encoding)
   166             return name.encode(encoding.encoding)
   167     return orig(source)
   167     return orig(source)
   168 
   168 
       
   169 def cleanupafterdispatch(orig, ui, options, cmd, cmdfunc):
       
   170     try:
       
   171         return orig(ui, options, cmd, cmdfunc)
       
   172     finally:
       
   173         # we need to call close() on the server to notify() the various
       
   174         # threading Conditions and allow the background threads to exit
       
   175         global server
       
   176         if server:
       
   177             server.close()
       
   178 
       
   179 extensions.wrapfunction(dispatch, '_runcommand', cleanupafterdispatch)
       
   180 
   169 extensions.wrapfunction(ui.ui, 'config', config)
   181 extensions.wrapfunction(ui.ui, 'config', config)
   170 extensions.wrapfunction(ui.ui, 'configitems', configitems)
   182 extensions.wrapfunction(ui.ui, 'configitems', configitems)
   171 extensions.wrapfunction(hg, 'defaultdest', defaultdest)
   183 extensions.wrapfunction(hg, 'defaultdest', defaultdest)
   172 hgweb_mod.hgweb = hgwebzc
   184 hgweb_mod.hgweb = hgwebzc
   173 hgwebdir_mod.hgwebdir = hgwebdirzc
   185 hgwebdir_mod.hgwebdir = hgwebdirzc