aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2012-02-18 21:59:02 +1300
committerAldo Cortesi <aldo@nullcube.com>2012-02-18 21:59:02 +1300
commitb74ba817eaf2d5c5be89515012053fab8013d645 (patch)
treeacc7cce8a37532c3b999b15a9d379760d7799ceb
parent5f1d7a07469d9ee12267f79fb1b398145d153bcf (diff)
downloadmitmproxy-b74ba817eaf2d5c5be89515012053fab8013d645.tar.gz
mitmproxy-b74ba817eaf2d5c5be89515012053fab8013d645.tar.bz2
mitmproxy-b74ba817eaf2d5c5be89515012053fab8013d645.zip
Side-step a bug in Urwid < 1.0
Urwid barfs when given a fixed-size column of width zero.
-rw-r--r--libmproxy/console/common.py28
1 files changed, 14 insertions, 14 deletions
diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py
index 5f80c250..fbeb83d7 100644
--- a/libmproxy/console/common.py
+++ b/libmproxy/console/common.py
@@ -43,20 +43,20 @@ def format_keyvals(lst, key="key", val="text", indent=0):
if kv is None:
ret.append(urwid.Text(""))
else:
- ret.append(
- urwid.Columns(
- [
- ("fixed", indent, urwid.Text("")),
- (
- "fixed",
- maxk,
- urwid.Text([(key, kv[0] or "")])
- ),
- urwid.Text([(val, kv[1])])
- ],
- dividechars = 2
- )
- )
+ cols = []
+ # This cumbersome construction process is here for a reason:
+ # Urwid < 1.0 barfs if given a fixed size column of size zero.
+ if indent:
+ cols.append(("fixed", indent, urwid.Text("")))
+ cols.extend([
+ (
+ "fixed",
+ maxk,
+ urwid.Text([(key, kv[0] or "")])
+ ),
+ urwid.Text([(val, kv[1])])
+ ])
+ ret.append(urwid.Columns(cols, dividechars = 2))
return ret