# HG changeset patch # User Nathan Jones # Date 1182869338 14400 # Node ID 7549cd526b7f9a4a91c73de62ba62bffd7a7e565 # Parent 3a4310e8fe72e4d1c0badc8d2537bc22189ace61 Fix serve on Windows without win32* modules. diff --git a/mercurial/util.py b/mercurial/util.py --- a/mercurial/util.py +++ b/mercurial/util.py @@ -968,6 +968,12 @@ if os.name == 'nt': return p_name_ext return default + def set_signal_handler(): + try: + set_signal_handler_win32() + except NameError: + pass + try: # override functions with win32 versions if possible from util_win32 import * diff --git a/mercurial/util_win32.py b/mercurial/util_win32.py --- a/mercurial/util_win32.py +++ b/mercurial/util_win32.py @@ -300,7 +300,7 @@ class posixfile_nt(object): getuser_fallback = win32api.GetUserName -def set_signal_handler(): +def set_signal_handler_win32(): """Register a termination handler for console events including CTRL+C. python signal handlers do not work well with socket operations.