Hi Soeren, ich habe versucht, den relevanten Teil Deines fixes zu backporten:
https://trac.osgeo.org/grass/changeset/66115 Ich hoffe, dass es richtig ist.. Gruesse Markus On Tue, Aug 25, 2015 at 12:13 PM, <svn_gr...@osgeo.org> wrote: > Author: huhabla > Date: 2015-08-25 03:13:30 -0700 (Tue, 25 Aug 2015) > New Revision: 66014 > > Modified: > grass/trunk/lib/python/temporal/c_libraries_interface.py > grass/trunk/lib/python/temporal/core.py > grass/trunk/lib/python/temporal/space_time_datasets.py > Log: > temporal library: Fixed wrong mapset access method > > > Modified: grass/trunk/lib/python/temporal/c_libraries_interface.py > =================================================================== > --- grass/trunk/lib/python/temporal/c_libraries_interface.py 2015-08-25 > 10:03:10 UTC (rev 66013) > +++ grass/trunk/lib/python/temporal/c_libraries_interface.py 2015-08-25 > 10:13:30 UTC (rev 66014) > @@ -151,15 +151,17 @@ > > :returns: Names of available mapsets as list of strings > """ > - > + > count = 0 > mapset_list = [] > try: > + # Initilaize the accessable mapset list, this is bad C design!!! > + libgis.G_get_mapset_name(0) > mapsets = libgis.G_get_available_mapsets() > while mapsets[count]: > char_list = "" > mapset = mapsets[count] > - if libgis.G_mapset_permissions(mapset) > 0: > + if libgis.G_mapset_permissions(mapset) == 1 and > libgis.G_is_mapset_in_search_path(mapset) == 1: > c = 0 > while mapset[c] != "\x00": > char_list += mapset[c] > @@ -758,7 +760,7 @@ > CALLBACK.argtypes = c_void_p > > cerror_handler = CALLBACK(error_handler) > - > + > libgis.G_add_error_handler(cerror_handler, None) > > # Crerate the function array > @@ -914,17 +916,17 @@ > >>> mapset = ciface.get_mapset() > >>> location = ciface.get_location() > >>> gisdbase = ciface.get_gisdbase() > - > + > >>> ciface.fatal_error() > Traceback (most recent call last): > raise FatalError(message) > FatalError: Fatal error > - > + > >>> ciface.fatal_error() > Traceback (most recent call last): > raise FatalError(message) > FatalError: Fatal error > - > + > >>> ciface.fatal_error() > Traceback (most recent call last): > raise FatalError(message) > @@ -950,7 +952,7 @@ > self.start_server() > self.start_checker_thread() > self.stopThread = False > - > + > def start_checker_thread(self): > if self.checkThread is not None and self.checkThread.is_alive(): > self.stop_checker_thread() > @@ -959,13 +961,13 @@ > self.checkThread.daemon = True > self.stopThread = False > self.checkThread.start() > - > + > def stop_checker_thread(self): > self.threadLock.acquire() > self.stopThread = True > self.threadLock.release() > self.checkThread.join(None) > - > + > def thread_checker(self): > """Check every 200 micro seconds if the server process is alive""" > while True: > @@ -989,7 +991,7 @@ > > def check_server(self): > self._check_restart_server() > - > + > def _check_restart_server(self): > """Restart the server if it was terminated > """ > @@ -1351,7 +1353,7 @@ > > def fatal_error(self, mapset=None): > """Generate a fatal error in libgis. > - > + > This function is only for testing purpose. > """ > self.check_server() > @@ -1360,7 +1362,7 @@ > return self.safe_receive("Fatal error") > > def safe_receive(self, message): > - """Receive the data and throw an FatalError exception in case the > server > + """Receive the data and throw an FatalError exception in case the > server > process was killed and the pipe was closed by the checker > thread""" > try: > ret = self.client_conn.recv() > > Modified: grass/trunk/lib/python/temporal/core.py > =================================================================== > --- grass/trunk/lib/python/temporal/core.py 2015-08-25 10:03:10 UTC (rev > 66013) > +++ grass/trunk/lib/python/temporal/core.py 2015-08-25 10:13:30 UTC (rev > 66014) > @@ -750,7 +750,7 @@ > stvds_tables_sql = stds_tables_template_sql.replace("STDS", "stvds") > str3ds_tables_sql = stds_tables_template_sql.replace("STDS", "str3ds") > > - msgr.message(_("Creating temporal database: %s" % > (tgis_database_string))) > + msgr.message(_("Creating temporal database: %s" % > (str(tgis_database_string)))) > > if tgis_backend == "sqlite": > # We need to create the sqlite3 database path if it does not exists > @@ -860,7 +860,7 @@ > driver, dbstring = self.tgis_mapsets[mapset] > > if dbstring not in self.unique_connections.keys(): > - self.unique_connections[dbstring] = > DBConnection(backend=driver, > + self.unique_connections[dbstring] = > DBConnection(backend=driver, > > dbstring=dbstring) > > self.connections[mapset] = self.unique_connections[dbstring] > @@ -1025,7 +1025,7 @@ > > def __init__(self, backend=None, dbstring=None): > """ Constructor of a database connection > - > + > param backend:The database backend sqlite or pg > param dbstring: The database connection string > """ > @@ -1071,7 +1071,7 @@ > """Connect to the DBMI to execute SQL statements > > Supported backends are sqlite3 and postgresql > - > + > param dbstring: The database connection string > """ > # Connection in the current mapset > > Modified: grass/trunk/lib/python/temporal/space_time_datasets.py > =================================================================== > --- grass/trunk/lib/python/temporal/space_time_datasets.py 2015-08-25 > 10:03:10 UTC (rev 66013) > +++ grass/trunk/lib/python/temporal/space_time_datasets.py 2015-08-25 > 10:13:30 UTC (rev 66014) > @@ -88,7 +88,7 @@ > >>> rmap.get_temporal_extent_as_tuple() > (datetime.datetime(2001, 1, 1, 0, 0), datetime.datetime(2012, 1, > 1, 0, 0)) > >>> rmap.get_name() > - 'strds_map_test_case' > + u'strds_map_test_case' > >>> rmap.get_mapset() == mapset > True > >>> rmap.get_temporal_type() > @@ -407,7 +407,7 @@ > >>> r3map.get_temporal_extent_as_tuple() > (datetime.datetime(2001, 1, 1, 0, 0), datetime.datetime(2012, 1, > 1, 0, 0)) > >>> r3map.get_name() > - 'str3ds_map_test_case' > + u'str3ds_map_test_case' > >>> r3map.get_mapset() == mapset > True > >>> r3map.get_temporal_type() > @@ -737,7 +737,7 @@ > >>> vmap.get_temporal_extent_as_tuple() > (datetime.datetime(2001, 1, 1, 0, 0), datetime.datetime(2012, 1, > 1, 0, 0)) > >>> vmap.get_name() > - 'stvds_map_test_case' > + u'stvds_map_test_case' > >>> vmap.get_mapset() == mapset > True > >>> vmap.get_temporal_type() > > _______________________________________________ > grass-commit mailing list > grass-com...@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/grass-commit _______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-dev