diff options
author | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2007-06-21 11:07:11 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2007-06-21 11:07:11 (GMT) |
commit | 427e9a00d739452482f4e53bd0744702933c0d1a (patch) | |
tree | 6a56f2af11f1a1aed08f8e73a4935e8a9e788458 /sugar | |
parent | 3ebb8f129193dfe1bd6e5fa7edd4d5a78d650423 (diff) |
Add extension to files that come into the clipboard without one.
Diffstat (limited to 'sugar')
-rw-r--r-- | sugar/objects/mime.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/sugar/objects/mime.py b/sugar/objects/mime.py index b50ada4..0030e53 100644 --- a/sugar/objects/mime.py +++ b/sugar/objects/mime.py @@ -9,3 +9,21 @@ def get_for_file(file_name): def get_from_file_name(file_name): return _sugarext.get_mime_type_from_file_name(file_name) + +_extensions_cache = {} +def get_primary_extension(mime_type): + if _extensions_cache.has_key(mime_type): + return _extensions_cache[mime_type] + + f = open('/etc/mime.types') + while True: + line = f.readline() + cols = line.replace('\t', ' ').split(' ') + if mime_type == cols[0]: + for col in cols[1:]: + if col: + _extensions_cache[mime_type] = col + return col + + _extensions_cache[mime_type] = None + return None |