Skip to contentSkip to conversation

stgit namelength is an integer

PATCH In review Pete Wyckoff 2 participants 2 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 stgit namelength is an integer

Interpret stgit namelength as an integer, else the use of name_len will fail with

File "/usr/lib/python2.5/site-packages/stgit/utils.py", line 206, in patch_name_from_msg

    return re.sub('[\W]+', '-', subject_line).strip('-')[:name_len]

TypeError: slice indices must be integers or None or have an __index__ method

---
 stgit/utils.py |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
stgit/utils.py +1 -1
index 81035a5..1fa96c2 100644
@@ -215,7 +215,7 @@ def patch_name_from_msg(msg):
     if not msg:
         return None
 
-    name_len = config.get('stgit.namelength')
+    name_len = config.getint('stgit.namelength')
     if not name_len:
         name_len = 30
 
Signature · 1 line
1.6.0.6
#1 lore raw

Thanks, but the test suite fails unless I apply this first:

Return None instead of crashing on undefined integer config items

stgit/config.py +3 -1
index 8934445..5b47580 100644
@@ -65,7 +65,9 @@ class GitConfig:
 
     def getint(self, name):
         value = self.get(name)
-        if value.isdigit():
+        if value == None:
+            return None
+        elif value.isdigit():
             return int(value)
         else:
             raise GitConfigException, 'Value for "%s" is not an integer: "%s"' % (name, value)
Signature · 2 lines
Karl Hasselström, [email protected]
      www.treskal.com/kalle