diff -up pyxdg-0.25/xdg/Mime.py.BAD pyxdg-0.25/xdg/Mime.py --- pyxdg-0.25/xdg/Mime.py.BAD 2013-03-05 10:19:10.750845664 -0500 +++ pyxdg-0.25/xdg/Mime.py 2013-03-05 10:19:14.771845520 -0500 @@ -360,7 +360,8 @@ def _cache_database(): if pattern.startswith('*.'): rest = pattern[2:] if not ('*' in rest or '[' in rest or '?' in rest): - exts[rest] = mtype + if rest not in exts: + exts[rest] = mtype continue if '*' in pattern or '[' in pattern or '?' in pattern: globs.append((pattern, mtype))