[PATCH 1 of 2] fsmonitor: fix exception message scraping

Zack Hricz zack.hricz at oculus.com
Tue Dec 20 23:53:58 EST 2016

# HG changeset patch
# User zphricz <zack.hricz at oculus.com>
# Date 1482295130 28800
#      Tue Dec 20 20:38:50 2016 -0800
# Node ID 445efa4de2742e3ba964bdabcce86897e53f0423
# Parent  6f9fcd29e29016587a5a7ac3157baec3eb39a134
fsmonitor: fix exception message scraping

pywatchman.CommandError formats its error message such that
'unable to resolve root' is not a prefix. This change fixes that by
instead just searching for it as a substring.

diff --git a/hgext/fsmonitor/watchmanclient.py b/hgext/fsmonitor/watchmanclient.py
--- a/hgext/fsmonitor/watchmanclient.py
+++ b/hgext/fsmonitor/watchmanclient.py
@@ -87,7 +87,7 @@
             return self._watchmanclient.query(*watchmanargs)
         except pywatchman.CommandError as ex:
-            if ex.msg.startswith('unable to resolve root'):
+            if 'unable to resolve root' in ex.msg:
                 raise WatchmanNoRoot(self._root, ex.msg)
             raise Unavailable(ex.msg)
         except pywatchman.WatchmanError as ex:

More information about the Mercurial-devel mailing list