Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--downloadmanager.py11
-rw-r--r--webactivity.py2
2 files changed, 13 insertions, 0 deletions
diff --git a/downloadmanager.py b/downloadmanager.py
index 4eab726..4adf98d 100644
--- a/downloadmanager.py
+++ b/downloadmanager.py
@@ -56,6 +56,8 @@ DS_DBUS_PATH = '/org/laptop/sugar/DataStore'
_MIN_TIME_UPDATE = 5 # In seconds
_MIN_PERCENT_UPDATE = 10
+_MAX_DELTA_CACHE_TIME = 86400 # In seconds
+
_active_downloads = []
_dest_to_window = {}
@@ -75,6 +77,15 @@ def remove_all_downloads():
datastore.delete(download.dl_jobject.object_id)
download.cleanup()
+def remove_old_parts():
+ temp_path = os.path.join(activity.get_activity_root(), 'instance')
+ if os.path.exists(temp_path):
+ for file in os.listdir(temp_path):
+ file_full_path = os.path.join(temp_path, file)
+ modification_time = os.path.getmtime(file_full_path)
+ if(time.time() - modification_time > _MAX_DELTA_CACHE_TIME):
+ logging.debug('removing %s' % file_full_path)
+ os.remove(file_full_path)
class HelperAppLauncherDialog:
_com_interfaces_ = interfaces.nsIHelperAppLauncherDialog
diff --git a/webactivity.py b/webactivity.py
index 865cbb6..bf20265 100644
--- a/webactivity.py
+++ b/webactivity.py
@@ -200,6 +200,8 @@ class WebActivity(activity.Activity):
_logger.debug('Starting the web activity')
+ downloadmanager.remove_old_parts()
+
self._force_close = False
self._tabbed_view = TabbedView()