Skip to content

Commit 9ff0e67

Browse files
committed
Ensure deref returns a string and not None. Closes #160
1 parent f86dab6 commit 9ff0e67

File tree

3 files changed

+10
-10
lines changed

3 files changed

+10
-10
lines changed

keepmenu/totp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ def get_otp_url(kp_entry):
133133
"""
134134
otp_url = ""
135135
if hasattr(kp_entry, "otp"):
136-
otp_url = kp_entry.deref("otp")
136+
otp_url = kp_entry.deref("otp") or ""
137137
else:
138138
otp_url = kp_entry.get_custom_property("otp")
139139
if otp_url:

keepmenu/type.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,11 +127,11 @@ def type_entry(entry, db_autotype=None):
127127
libraries.get(library, type_entry_pynput)(entry, tokens)
128128

129129
PLACEHOLDER_AUTOTYPE_TOKENS = {
130-
"{TITLE}" : lambda e: e.deref('title'),
131-
"{USERNAME}": lambda e: e.deref('username'),
132-
"{URL}" : lambda e: e.deref('url'),
133-
"{PASSWORD}": lambda e: e.deref('password'),
134-
"{NOTES}" : lambda e: e.deref('notes'),
130+
"{TITLE}" : lambda e: e.deref('title') or "",
131+
"{USERNAME}": lambda e: e.deref('username') or "",
132+
"{URL}" : lambda e: e.deref('url') or "",
133+
"{PASSWORD}": lambda e: e.deref('password') or "",
134+
"{NOTES}" : lambda e: e.deref('notes') or "",
135135
"{TOTP}" : lambda e: gen_otp(get_otp_url(e)),
136136
"{TIMEOTP}" : lambda e: gen_otp(get_otp_url(e)),
137137
}

keepmenu/view.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ def view_all_entries(options, kp_entries, dbname):
2121
kps = str("\n").join([kp_entry_pattern.format(j,
2222
os.path.join("/".join(i.path[:-1]),
2323
i.deref('title') or ""),
24-
i.deref('username'),
25-
i.deref('url'),
24+
i.deref('username') or "",
25+
i.deref('url') or "",
2626
na=num_align)
2727
for j, i in enumerate(kp_entries)])
2828
if options:
@@ -74,11 +74,11 @@ def view_entry(kp_entry):
7474

7575
sel = dmenu_select(len(fields), inp="\n".join(fields))
7676
if sel == "Notes: <Enter to view>":
77-
sel = view_notes(kp_entry.deref('notes'))
77+
sel = view_notes(kp_entry.deref('notes') or "")
7878
elif sel == "Notes: None":
7979
sel = ""
8080
elif sel == '**********':
81-
sel = kp_entry.deref('password')
81+
sel = kp_entry.deref('password') or ""
8282
elif sel == "TOTP: ******":
8383
sel = gen_otp(get_otp_url(kp_entry))
8484
elif sel == fields[4] and not keepmenu.CONF.getboolean("database", "type_url", fallback=False):

0 commit comments

Comments
 (0)