From 6debe0c34d2973d8af002fbe4fe195d6d84c2eec Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Mon, 13 Aug 2007 22:26:51 +0000 Subject: Merge branch 'master' of git+ssh://dev.laptop.org/git/sugar --- diff --git a/NEWS b/NEWS index 5b53d9c..623fb6a 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,5 @@ +Snapshot 040c94d181 + * #2099 Tweak a color pair as requested by Walter. (marco) * Draw an invoker that is connected with the palette for toolbuttons. (benzea) * Fix traceback when reading in saved WPA2 network configs (dcbw) diff --git a/sugar/activity/activity.py b/sugar/activity/activity.py index 2c887b9..262d89b 100644 --- a/sugar/activity/activity.py +++ b/sugar/activity/activity.py @@ -305,6 +305,18 @@ class Activity(Window, gtk.Container): def _internal_jobject_error_cb(self, err): logging.debug("Error creating activity datastore object: %s" % err) + def get_activity_root(self): + """ + Return the appropriate location in the fs where to store activity related + data that doesn't pertain to the current execution of the activity and + thus cannot go into the DataStore. + """ + if os.environ.has_key('SUGAR_ACTIVITY_ROOT') and \ + os.environ['SUGAR_ACTIVITY_ROOT']: + return os.environ['SUGAR_ACTIVITY_ROOT'] + else: + return '/' + def read_file(self, file_path): """ Subclasses implement this method if they support resuming objects from diff --git a/sugar/activity/activityfactoryservice.py b/sugar/activity/activityfactoryservice.py index 8b1397f..63265a1 100644 --- a/sugar/activity/activityfactoryservice.py +++ b/sugar/activity/activityfactoryservice.py @@ -30,6 +30,7 @@ from sugar.activity.bundle import Bundle from sugar.activity import activityhandle from sugar import logger from sugar import _sugarext +from sugar import env # Work around for dbus mutex locking issue gobject.threads_init() @@ -156,6 +157,7 @@ def run(bundle_path): gtk.icon_theme_get_default().append_search_path(bundle.get_icons_path()) os.environ['SUGAR_BUNDLE_PATH'] = bundle_path + os.environ['SUGAR_ACTIVITY_ROOT'] = env.get_profile_path(bundle.get_service_name()) _sugarext.set_prgname(bundle.get_service_name()) _sugarext.set_application_name(bundle.get_name()) diff --git a/sugar/datastore/datastore.py b/sugar/datastore/datastore.py index 1fbe615..5ba994d 100644 --- a/sugar/datastore/datastore.py +++ b/sugar/datastore/datastore.py @@ -140,14 +140,12 @@ class DSObject(object): activityfactory.create_with_object_id(service_name, object_id) def destroy(self): - logging.debug('DSObject.destroy() file_path: %r.' % self._file_path) if self._destroyed: logging.warning('This DSObject has already been destroyed!.') import pdb;pdb.set_trace() return self._destroyed = True if self._file_path and self._owns_file: - logging.debug('Removing temp file: %r' % self._file_path) if os.path.isfile(self._file_path): os.remove(self._file_path) self._owns_file = False -- cgit v0.9.1