summaryrefslogtreecommitdiff
path: root/plugins/shotwell-data-imports/FSpotImporter.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/shotwell-data-imports/FSpotImporter.c')
-rw-r--r--plugins/shotwell-data-imports/FSpotImporter.c5345
1 files changed, 5345 insertions, 0 deletions
diff --git a/plugins/shotwell-data-imports/FSpotImporter.c b/plugins/shotwell-data-imports/FSpotImporter.c
new file mode 100644
index 0000000..5cb73d5
--- /dev/null
+++ b/plugins/shotwell-data-imports/FSpotImporter.c
@@ -0,0 +1,5345 @@
+/* FSpotImporter.c generated by valac 0.32.1, the Vala compiler
+ * generated from FSpotImporter.vala, do not modify */
+
+/* Copyright 2016 Software Freedom Conservancy Inc.
+ *
+ * This software is licensed under the GNU Lesser General Public License
+ * (version 2.1 or later). See the COPYING file in this distribution.
+ */
+
+#include <glib.h>
+#include <glib-object.h>
+#include <shotwell-plugin-dev-1.0.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gio/gio.h>
+#include "shotwell-plugin-common.h"
+#include <glib/gi18n-lib.h>
+#include <time.h>
+#include <gee.h>
+#include <float.h>
+#include <math.h>
+
+
+#define TYPE_FSPOT_SERVICE (fspot_service_get_type ())
+#define FSPOT_SERVICE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FSPOT_SERVICE, FSpotService))
+#define FSPOT_SERVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_FSPOT_SERVICE, FSpotServiceClass))
+#define IS_FSPOT_SERVICE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FSPOT_SERVICE))
+#define IS_FSPOT_SERVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_FSPOT_SERVICE))
+#define FSPOT_SERVICE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_FSPOT_SERVICE, FSpotServiceClass))
+
+typedef struct _FSpotService FSpotService;
+typedef struct _FSpotServiceClass FSpotServiceClass;
+typedef struct _FSpotServicePrivate FSpotServicePrivate;
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER (data_imports_fspot_fspot_data_importer_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_DATA_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter))
+#define DATA_IMPORTS_FSPOT_FSPOT_DATA_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporterClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER))
+#define DATA_IMPORTS_FSPOT_FSPOT_DATA_IMPORTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporterClass))
+
+typedef struct _DataImportsFSpotFSpotDataImporter DataImportsFSpotFSpotDataImporter;
+typedef struct _DataImportsFSpotFSpotDataImporterClass DataImportsFSpotFSpotDataImporterClass;
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY (data_imports_fspot_fspot_importable_library_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_LIBRARY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibrary))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_LIBRARY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibraryClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_LIBRARY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_LIBRARY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_LIBRARY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibraryClass))
+
+typedef struct _DataImportsFSpotFSpotImportableLibrary DataImportsFSpotFSpotImportableLibrary;
+typedef struct _DataImportsFSpotFSpotImportableLibraryClass DataImportsFSpotFSpotImportableLibraryClass;
+typedef struct _DataImportsFSpotFSpotImportableLibraryPrivate DataImportsFSpotFSpotImportableLibraryPrivate;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM (data_imports_fspot_fspot_importable_item_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItemClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItemClass))
+
+typedef struct _DataImportsFSpotFSpotImportableItem DataImportsFSpotFSpotImportableItem;
+typedef struct _DataImportsFSpotFSpotImportableItemClass DataImportsFSpotFSpotImportableItemClass;
+typedef struct _DataImportsFSpotFSpotImportableItemPrivate DataImportsFSpotFSpotImportableItemPrivate;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_ROW (data_imports_fspot_db_fspot_photo_row_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_ROW, DataImportsFSpotDbFSpotPhotoRow))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_ROW, DataImportsFSpotDbFSpotPhotoRowClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_ROW))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_ROW))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_ROW, DataImportsFSpotDbFSpotPhotoRowClass))
+
+typedef struct _DataImportsFSpotDbFSpotPhotoRow DataImportsFSpotDbFSpotPhotoRow;
+typedef struct _DataImportsFSpotDbFSpotPhotoRowClass DataImportsFSpotDbFSpotPhotoRowClass;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSION_ROW (data_imports_fspot_db_fspot_photo_version_row_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_VERSION_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSION_ROW, DataImportsFSpotDbFSpotPhotoVersionRow))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_VERSION_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSION_ROW, DataImportsFSpotDbFSpotPhotoVersionRowClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_VERSION_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSION_ROW))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_VERSION_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSION_ROW))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_VERSION_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSION_ROW, DataImportsFSpotDbFSpotPhotoVersionRowClass))
+
+typedef struct _DataImportsFSpotDbFSpotPhotoVersionRow DataImportsFSpotDbFSpotPhotoVersionRow;
+typedef struct _DataImportsFSpotDbFSpotPhotoVersionRowClass DataImportsFSpotDbFSpotPhotoVersionRowClass;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW (data_imports_fspot_db_fspot_roll_row_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRow))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRowClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLL_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLL_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRowClass))
+
+typedef struct _DataImportsFSpotDbFSpotRollRow DataImportsFSpotDbFSpotRollRow;
+typedef struct _DataImportsFSpotDbFSpotRollRowClass DataImportsFSpotDbFSpotRollRowClass;
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG (data_imports_fspot_fspot_importable_tag_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTag))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTagClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTagClass))
+
+typedef struct _DataImportsFSpotFSpotImportableTag DataImportsFSpotFSpotImportableTag;
+typedef struct _DataImportsFSpotFSpotImportableTagClass DataImportsFSpotFSpotImportableTagClass;
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT (data_imports_fspot_fspot_importable_event_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_EVENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, DataImportsFSpotFSpotImportableEvent))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, DataImportsFSpotFSpotImportableEventClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_EVENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_EVENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, DataImportsFSpotFSpotImportableEventClass))
+
+typedef struct _DataImportsFSpotFSpotImportableEvent DataImportsFSpotFSpotImportableEvent;
+typedef struct _DataImportsFSpotFSpotImportableEventClass DataImportsFSpotFSpotImportableEventClass;
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING (data_imports_fspot_fspot_importable_rating_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRating))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRatingClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_RATING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING))
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRatingClass))
+
+typedef struct _DataImportsFSpotFSpotImportableRating DataImportsFSpotFSpotImportableRating;
+typedef struct _DataImportsFSpotFSpotImportableRatingClass DataImportsFSpotFSpotImportableRatingClass;
+typedef struct _DataImportsFSpotDbFSpotPhotoRowPrivate DataImportsFSpotDbFSpotPhotoRowPrivate;
+typedef struct _DataImportsFSpotDbFSpotPhotoVersionRowPrivate DataImportsFSpotDbFSpotPhotoVersionRowPrivate;
+#define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL)))
+typedef struct _DataImportsFSpotFSpotImportableTagPrivate DataImportsFSpotFSpotImportableTagPrivate;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAG_ROW (data_imports_fspot_db_fspot_tag_row_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAG_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAG_ROW, DataImportsFSpotDbFSpotTagRow))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAG_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAG_ROW, DataImportsFSpotDbFSpotTagRowClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAG_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAG_ROW))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAG_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAG_ROW))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAG_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAG_ROW, DataImportsFSpotDbFSpotTagRowClass))
+
+typedef struct _DataImportsFSpotDbFSpotTagRow DataImportsFSpotDbFSpotTagRow;
+typedef struct _DataImportsFSpotDbFSpotTagRowClass DataImportsFSpotDbFSpotTagRowClass;
+typedef struct _DataImportsFSpotDbFSpotTagRowPrivate DataImportsFSpotDbFSpotTagRowPrivate;
+typedef struct _DataImportsFSpotFSpotImportableEventPrivate DataImportsFSpotFSpotImportableEventPrivate;
+typedef struct _DataImportsFSpotFSpotImportableRatingPrivate DataImportsFSpotFSpotImportableRatingPrivate;
+
+#define DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE (data_imports_fspot_fspot_tags_cache_get_type ())
+#define DATA_IMPORTS_FSPOT_FSPOT_TAGS_CACHE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE, DataImportsFSpotFSpotTagsCache))
+#define DATA_IMPORTS_FSPOT_FSPOT_TAGS_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE, DataImportsFSpotFSpotTagsCacheClass))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_TAGS_CACHE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE))
+#define DATA_IMPORTS_FSPOT_IS_FSPOT_TAGS_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE))
+#define DATA_IMPORTS_FSPOT_FSPOT_TAGS_CACHE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE, DataImportsFSpotFSpotTagsCacheClass))
+
+typedef struct _DataImportsFSpotFSpotTagsCache DataImportsFSpotFSpotTagsCache;
+typedef struct _DataImportsFSpotFSpotTagsCacheClass DataImportsFSpotFSpotTagsCacheClass;
+typedef struct _DataImportsFSpotFSpotTagsCachePrivate DataImportsFSpotFSpotTagsCachePrivate;
+
+#define TYPE_IMPORTABLE_DATABASE_TABLE (importable_database_table_get_type ())
+#define IMPORTABLE_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable))
+#define IMPORTABLE_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTableClass))
+#define IS_IMPORTABLE_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IMPORTABLE_DATABASE_TABLE))
+#define IS_IMPORTABLE_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IMPORTABLE_DATABASE_TABLE))
+#define IMPORTABLE_DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTableClass))
+
+typedef struct _ImportableDatabaseTable ImportableDatabaseTable;
+typedef struct _ImportableDatabaseTableClass ImportableDatabaseTableClass;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE (data_imports_fspot_db_fspot_database_table_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTableClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTableClass))
+
+typedef struct _DataImportsFSpotDbFSpotDatabaseTable DataImportsFSpotDbFSpotDatabaseTable;
+typedef struct _DataImportsFSpotDbFSpotDatabaseTableClass DataImportsFSpotDbFSpotDatabaseTableClass;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAGS_TABLE (data_imports_fspot_db_fspot_tags_table_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAGS_TABLE, DataImportsFSpotDbFSpotTagsTable))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAGS_TABLE, DataImportsFSpotDbFSpotTagsTableClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAGS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAGS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAGS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAGS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TAGS_TABLE, DataImportsFSpotDbFSpotTagsTableClass))
+
+typedef struct _DataImportsFSpotDbFSpotTagsTable DataImportsFSpotDbFSpotTagsTable;
+typedef struct _DataImportsFSpotDbFSpotTagsTableClass DataImportsFSpotDbFSpotTagsTableClass;
+#define _importable_database_table_unref0(var) ((var == NULL) ? NULL : (var = (importable_database_table_unref (var), NULL)))
+typedef struct _DataImportsFSpotFSpotDataImporterPrivate DataImportsFSpotFSpotDataImporterPrivate;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE (data_imports_fspot_db_fspot_database_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE, DataImportsFSpotDbFSpotDatabase))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE, DataImportsFSpotDbFSpotDatabaseClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE, DataImportsFSpotDbFSpotDatabaseClass))
+
+typedef struct _DataImportsFSpotDbFSpotDatabase DataImportsFSpotDbFSpotDatabase;
+typedef struct _DataImportsFSpotDbFSpotDatabaseClass DataImportsFSpotDbFSpotDatabaseClass;
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+typedef struct _DataImportsFSpotDbFSpotDatabasePrivate DataImportsFSpotDbFSpotDatabasePrivate;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTOS_TABLE (data_imports_fspot_db_fspot_photos_table_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTOS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTOS_TABLE, DataImportsFSpotDbFSpotPhotosTable))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTOS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTOS_TABLE, DataImportsFSpotDbFSpotPhotosTableClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTOS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTOS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTOS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTOS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTOS_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTOS_TABLE, DataImportsFSpotDbFSpotPhotosTableClass))
+
+typedef struct _DataImportsFSpotDbFSpotPhotosTable DataImportsFSpotDbFSpotPhotosTable;
+typedef struct _DataImportsFSpotDbFSpotPhotosTableClass DataImportsFSpotDbFSpotPhotosTableClass;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSIONS_TABLE (data_imports_fspot_db_fspot_photo_versions_table_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_VERSIONS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSIONS_TABLE, DataImportsFSpotDbFSpotPhotoVersionsTable))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_VERSIONS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSIONS_TABLE, DataImportsFSpotDbFSpotPhotoVersionsTableClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_VERSIONS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSIONS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_VERSIONS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSIONS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_PHOTO_VERSIONS_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_PHOTO_VERSIONS_TABLE, DataImportsFSpotDbFSpotPhotoVersionsTableClass))
+
+typedef struct _DataImportsFSpotDbFSpotPhotoVersionsTable DataImportsFSpotDbFSpotPhotoVersionsTable;
+typedef struct _DataImportsFSpotDbFSpotPhotoVersionsTableClass DataImportsFSpotDbFSpotPhotoVersionsTableClass;
+
+#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE (data_imports_fspot_db_fspot_rolls_table_get_type ())
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, DataImportsFSpotDbFSpotRollsTable))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, DataImportsFSpotDbFSpotRollsTableClass))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE))
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, DataImportsFSpotDbFSpotRollsTableClass))
+
+typedef struct _DataImportsFSpotDbFSpotRollsTable DataImportsFSpotDbFSpotRollsTable;
+typedef struct _DataImportsFSpotDbFSpotRollsTableClass DataImportsFSpotDbFSpotRollsTableClass;
+
+struct _FSpotService {
+ GObject parent_instance;
+ FSpotServicePrivate * priv;
+};
+
+struct _FSpotServiceClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableLibrary {
+ GObject parent_instance;
+ DataImportsFSpotFSpotImportableLibraryPrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotImportableLibraryClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableLibraryPrivate {
+ GFile* db_file;
+};
+
+struct _DataImportsFSpotFSpotImportableItem {
+ GObject parent_instance;
+ DataImportsFSpotFSpotImportableItemPrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotImportableItemClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableItemPrivate {
+ DataImportsFSpotDbFSpotPhotoRow* photo_row;
+ DataImportsFSpotDbFSpotPhotoVersionRow* photo_version_row;
+ DataImportsFSpotDbFSpotRollRow* roll_row;
+ DataImportsFSpotFSpotImportableTag** tags;
+ gint tags_length1;
+ gint _tags_size_;
+ DataImportsFSpotFSpotImportableEvent* event;
+ DataImportsFSpotFSpotImportableRating* rating;
+ gchar* folder_path;
+ gchar* filename;
+ time_t* date_time;
+};
+
+struct _DataImportsFSpotDbFSpotPhotoRow {
+ GObject parent_instance;
+ DataImportsFSpotDbFSpotPhotoRowPrivate * priv;
+ gint64 photo_id;
+ time_t time;
+ GFile* base_path;
+ gchar* filename;
+ gchar* description;
+ gint64 roll_id;
+ gint64 default_version_id;
+ gint rating;
+ gchar* md5_sum;
+};
+
+struct _DataImportsFSpotDbFSpotPhotoRowClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotDbFSpotPhotoVersionRow {
+ GObject parent_instance;
+ DataImportsFSpotDbFSpotPhotoVersionRowPrivate * priv;
+ gint64 photo_id;
+ gint64 version_id;
+ gchar* name;
+ GFile* base_path;
+ gchar* filename;
+ gchar* md5_sum;
+ gboolean is_protected;
+};
+
+struct _DataImportsFSpotDbFSpotPhotoVersionRowClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableTag {
+ GObject parent_instance;
+ DataImportsFSpotFSpotImportableTagPrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotImportableTagClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableTagPrivate {
+ DataImportsFSpotDbFSpotTagRow* row;
+ DataImportsFSpotFSpotImportableTag* parent;
+};
+
+struct _DataImportsFSpotDbFSpotTagRow {
+ GObject parent_instance;
+ DataImportsFSpotDbFSpotTagRowPrivate * priv;
+ gint64 tag_id;
+ gchar* name;
+ gint64 category_id;
+ gboolean is_category;
+ gint sort_priority;
+ gchar* stock_icon;
+};
+
+struct _DataImportsFSpotDbFSpotTagRowClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableEvent {
+ GObject parent_instance;
+ DataImportsFSpotFSpotImportableEventPrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotImportableEventClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableEventPrivate {
+ DataImportsFSpotDbFSpotTagRow* row;
+};
+
+struct _DataImportsFSpotFSpotImportableRating {
+ GObject parent_instance;
+ DataImportsFSpotFSpotImportableRatingPrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotImportableRatingClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotImportableRatingPrivate {
+ gint rating_value;
+};
+
+struct _DataImportsFSpotFSpotTagsCache {
+ GObject parent_instance;
+ DataImportsFSpotFSpotTagsCachePrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotTagsCacheClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotTagsCachePrivate {
+ DataImportsFSpotDbFSpotTagsTable* tags_table;
+ GeeHashMap* tags_map;
+};
+
+typedef enum {
+ DATABASE_ERROR_ERROR,
+ DATABASE_ERROR_BACKING,
+ DATABASE_ERROR_MEMORY,
+ DATABASE_ERROR_ABORT,
+ DATABASE_ERROR_LIMITS,
+ DATABASE_ERROR_TYPESPEC
+} DatabaseError;
+#define DATABASE_ERROR database_error_quark ()
+struct _DataImportsFSpotFSpotDataImporter {
+ GObject parent_instance;
+ DataImportsFSpotFSpotDataImporterPrivate * priv;
+};
+
+struct _DataImportsFSpotFSpotDataImporterClass {
+ GObjectClass parent_class;
+};
+
+struct _DataImportsFSpotFSpotDataImporterPrivate {
+ SpitDataImportsPluginHost* host;
+ SpitDataImportsService* service;
+ gboolean running;
+};
+
+struct _DataImportsFSpotDbFSpotDatabase {
+ GObject parent_instance;
+ DataImportsFSpotDbFSpotDatabasePrivate * priv;
+ DataImportsFSpotDbFSpotPhotosTable* photos_table;
+ DataImportsFSpotDbFSpotPhotoVersionsTable* photo_versions_table;
+ DataImportsFSpotDbFSpotTagsTable* tags_table;
+ DataImportsFSpotDbFSpotRollsTable* rolls_table;
+ gint64 hidden_tag_id;
+};
+
+struct _DataImportsFSpotDbFSpotDatabaseClass {
+ GObjectClass parent_class;
+};
+
+
+static gpointer fspot_service_parent_class = NULL;
+static GdkPixbuf** fspot_service_icon_pixbuf_set;
+static gint fspot_service_icon_pixbuf_set_length1;
+static GdkPixbuf** fspot_service_icon_pixbuf_set = NULL;
+static gint fspot_service_icon_pixbuf_set_length1 = 0;
+static gint _fspot_service_icon_pixbuf_set_size_ = 0;
+static SpitPluggableIface* fspot_service_spit_pluggable_parent_iface = NULL;
+static SpitDataImportsServiceIface* fspot_service_spit_data_imports_service_parent_iface = NULL;
+static gpointer data_imports_fspot_fspot_importable_library_parent_class = NULL;
+static SpitDataImportsImportableLibraryIface* data_imports_fspot_fspot_importable_library_spit_data_imports_importable_library_parent_iface = NULL;
+static gpointer data_imports_fspot_fspot_importable_item_parent_class = NULL;
+static SpitDataImportsImportableMediaItemIface* data_imports_fspot_fspot_importable_item_spit_data_imports_importable_media_item_parent_iface = NULL;
+static gpointer data_imports_fspot_fspot_importable_tag_parent_class = NULL;
+static SpitDataImportsImportableTagIface* data_imports_fspot_fspot_importable_tag_spit_data_imports_importable_tag_parent_iface = NULL;
+static gpointer data_imports_fspot_fspot_importable_event_parent_class = NULL;
+static SpitDataImportsImportableEventIface* data_imports_fspot_fspot_importable_event_spit_data_imports_importable_event_parent_iface = NULL;
+static gpointer data_imports_fspot_fspot_importable_rating_parent_class = NULL;
+static SpitDataImportsImportableRatingIface* data_imports_fspot_fspot_importable_rating_spit_data_imports_importable_rating_parent_iface = NULL;
+static gpointer data_imports_fspot_fspot_tags_cache_parent_class = NULL;
+static gpointer data_imports_fspot_fspot_data_importer_parent_class = NULL;
+static SpitDataImportsDataImporterIface* data_imports_fspot_fspot_data_importer_spit_data_imports_data_importer_parent_iface = NULL;
+
+GType fspot_service_get_type (void) G_GNUC_CONST;
+enum {
+ FSPOT_SERVICE_DUMMY_PROPERTY
+};
+#define FSPOT_SERVICE_ICON_FILENAME "f-spot-24.png"
+FSpotService* fspot_service_new (GFile* resource_directory);
+FSpotService* fspot_service_construct (GType object_type, GFile* resource_directory);
+void data_imports_fspot_db_init (void);
+static gint fspot_service_real_get_pluggable_interface (SpitPluggable* base, gint min_host_interface, gint max_host_interface);
+static const gchar* fspot_service_real_get_id (SpitPluggable* base);
+static const gchar* fspot_service_real_get_pluggable_name (SpitPluggable* base);
+static void fspot_service_real_get_info (SpitPluggable* base, SpitPluggableInfo* info);
+static GdkPixbuf** _vala_array_dup1 (GdkPixbuf** self, int length);
+static void fspot_service_real_activation (SpitPluggable* base, gboolean enabled);
+static SpitDataImportsDataImporter* fspot_service_real_create_data_importer (SpitDataImportsService* base, SpitDataImportsPluginHost* host);
+DataImportsFSpotFSpotDataImporter* data_imports_fspot_fspot_data_importer_new (SpitDataImportsService* service, SpitDataImportsPluginHost* host);
+DataImportsFSpotFSpotDataImporter* data_imports_fspot_fspot_data_importer_construct (GType object_type, SpitDataImportsService* service, SpitDataImportsPluginHost* host);
+GType data_imports_fspot_fspot_data_importer_get_type (void) G_GNUC_CONST;
+static void fspot_service_finalize (GObject* obj);
+#define DATA_IMPORTS_FSPOT_SERVICE_NAME "F-Spot"
+#define DATA_IMPORTS_FSPOT_SERVICE_WELCOME_MESSAGE _ ("Welcome to the F-Spot library import service.\n" \
+"\n" \
+"Please select a library to import, either by selecting one of the exis" \
+"ting libraries found by Shotwell or by selecting an alternative F-Spot" \
+" database file.")
+#define DATA_IMPORTS_FSPOT_SERVICE_WELCOME_MESSAGE_FILE_ONLY _ ("Welcome to the F-Spot library import service.\n" \
+"\n" \
+"Please select an F-Spot database file.")
+#define DATA_IMPORTS_FSPOT_FILE_IMPORT_LABEL _ ("Manually select an F-Spot database file to import:")
+#define DATA_IMPORTS_FSPOT_ERROR_CANT_OPEN_DB_FILE _ ("Cannot open the selected F-Spot database file: the file does not exist" \
+" or is not an F-Spot database")
+#define DATA_IMPORTS_FSPOT_ERROR_UNSUPPORTED_DB_VERSION _ ("Cannot open the selected F-Spot database file: this version of the F-S" \
+"pot database is not supported by Shotwell")
+#define DATA_IMPORTS_FSPOT_ERROR_CANT_READ_TAGS_TABLE _ ("Cannot read the selected F-Spot database file: error while reading tag" \
+"s table")
+#define DATA_IMPORTS_FSPOT_ERROR_CANT_READ_PHOTOS_TABLE _ ("Cannot read the selected F-Spot database file: error while reading pho" \
+"tos table")
+#define DATA_IMPORTS_FSPOT_MESSAGE_FINAL_SCREEN _ ("Shotwell has found %d photos in the F-Spot library and is currently im" \
+"porting them. Duplicates will be automatically detected and removed.\n" \
+"\n" \
+"You can close this dialog and start using Shotwell while the import is" \
+" taking place in the background.")
+GType data_imports_fspot_fspot_importable_library_get_type (void) G_GNUC_CONST;
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_LIBRARY_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibraryPrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_LIBRARY_DUMMY_PROPERTY
+};
+DataImportsFSpotFSpotImportableLibrary* data_imports_fspot_fspot_importable_library_new (GFile* db_file);
+DataImportsFSpotFSpotImportableLibrary* data_imports_fspot_fspot_importable_library_construct (GType object_type, GFile* db_file);
+GFile* data_imports_fspot_fspot_importable_library_get_db_file (DataImportsFSpotFSpotImportableLibrary* self);
+static gchar* data_imports_fspot_fspot_importable_library_real_get_display_name (SpitDataImportsImportableLibrary* base);
+static void data_imports_fspot_fspot_importable_library_finalize (GObject* obj);
+GType data_imports_fspot_fspot_importable_item_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_photo_row_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_photo_version_row_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_roll_row_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_fspot_importable_tag_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_fspot_importable_event_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_fspot_importable_rating_get_type (void) G_GNUC_CONST;
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_ITEM_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItemPrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_ITEM_DUMMY_PROPERTY
+};
+DataImportsFSpotFSpotImportableItem* data_imports_fspot_fspot_importable_item_new (DataImportsFSpotDbFSpotPhotoRow* photo_row, DataImportsFSpotDbFSpotPhotoVersionRow* photo_version_row, DataImportsFSpotDbFSpotRollRow* roll_row, DataImportsFSpotFSpotImportableTag** tags, int tags_length1, DataImportsFSpotFSpotImportableEvent* event, gboolean is_hidden, gboolean is_favorite);
+DataImportsFSpotFSpotImportableItem* data_imports_fspot_fspot_importable_item_construct (GType object_type, DataImportsFSpotDbFSpotPhotoRow* photo_row, DataImportsFSpotDbFSpotPhotoVersionRow* photo_version_row, DataImportsFSpotDbFSpotRollRow* roll_row, DataImportsFSpotFSpotImportableTag** tags, int tags_length1, DataImportsFSpotFSpotImportableEvent* event, gboolean is_hidden, gboolean is_favorite);
+static DataImportsFSpotFSpotImportableTag** _vala_array_dup2 (DataImportsFSpotFSpotImportableTag** self, int length);
+static time_t* _time_t_dup (time_t* self);
+DataImportsFSpotFSpotImportableRating* data_imports_fspot_fspot_importable_rating_new (gint rating_value);
+DataImportsFSpotFSpotImportableRating* data_imports_fspot_fspot_importable_rating_construct (GType object_type, gint rating_value);
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_REJECTED -1
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_UNRATED 0
+static gchar* data_imports_fspot_fspot_importable_item_decode_url (DataImportsFSpotFSpotImportableItem* self, const gchar* url);
+static SpitDataImportsImportableTag** data_imports_fspot_fspot_importable_item_real_get_tags (SpitDataImportsImportableMediaItem* base, int* result_length1);
+static void _vala_array_add1 (SpitDataImportsImportableTag*** array, int* length, int* size, SpitDataImportsImportableTag* value);
+static SpitDataImportsImportableEvent* data_imports_fspot_fspot_importable_item_real_get_event (SpitDataImportsImportableMediaItem* base);
+static gchar* data_imports_fspot_fspot_importable_item_real_get_folder_path (SpitDataImportsImportableMediaItem* base);
+static gchar* data_imports_fspot_fspot_importable_item_real_get_filename (SpitDataImportsImportableMediaItem* base);
+static gchar* data_imports_fspot_fspot_importable_item_real_get_title (SpitDataImportsImportableMediaItem* base);
+static SpitDataImportsImportableRating* data_imports_fspot_fspot_importable_item_real_get_rating (SpitDataImportsImportableMediaItem* base);
+static time_t* data_imports_fspot_fspot_importable_item_real_get_exposure_time (SpitDataImportsImportableMediaItem* base);
+static void data_imports_fspot_fspot_importable_item_finalize (GObject* obj);
+GType data_imports_fspot_db_fspot_tag_row_get_type (void) G_GNUC_CONST;
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_TAG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTagPrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_TAG_DUMMY_PROPERTY
+};
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_importable_tag_new (DataImportsFSpotDbFSpotTagRow* row, DataImportsFSpotFSpotImportableTag* parent);
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_importable_tag_construct (GType object_type, DataImportsFSpotDbFSpotTagRow* row, DataImportsFSpotFSpotImportableTag* parent);
+gint64 data_imports_fspot_fspot_importable_tag_get_id (DataImportsFSpotFSpotImportableTag* self);
+static gchar* data_imports_fspot_fspot_importable_tag_real_get_name (SpitDataImportsImportableTag* base);
+static SpitDataImportsImportableTag* data_imports_fspot_fspot_importable_tag_real_get_parent (SpitDataImportsImportableTag* base);
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_importable_tag_get_fspot_parent (DataImportsFSpotFSpotImportableTag* self);
+gchar* data_imports_fspot_fspot_importable_tag_get_stock_icon (DataImportsFSpotFSpotImportableTag* self);
+gboolean data_imports_fspot_fspot_importable_tag_is_stock (DataImportsFSpotFSpotImportableTag* self);
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_PREFIX_STOCK_ICON "stock_icon:"
+DataImportsFSpotFSpotImportableEvent* data_imports_fspot_fspot_importable_tag_to_event (DataImportsFSpotFSpotImportableTag* self);
+DataImportsFSpotFSpotImportableEvent* data_imports_fspot_fspot_importable_event_new (DataImportsFSpotDbFSpotTagRow* row);
+DataImportsFSpotFSpotImportableEvent* data_imports_fspot_fspot_importable_event_construct (GType object_type, DataImportsFSpotDbFSpotTagRow* row);
+static void data_imports_fspot_fspot_importable_tag_finalize (GObject* obj);
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_EVENT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, DataImportsFSpotFSpotImportableEventPrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_EVENT_DUMMY_PROPERTY
+};
+static gchar* data_imports_fspot_fspot_importable_event_real_get_name (SpitDataImportsImportableEvent* base);
+static void data_imports_fspot_fspot_importable_event_finalize (GObject* obj);
+#define DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRatingPrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_DUMMY_PROPERTY
+};
+static gboolean data_imports_fspot_fspot_importable_rating_real_is_rejected (SpitDataImportsImportableRating* base);
+static gboolean data_imports_fspot_fspot_importable_rating_real_is_unrated (SpitDataImportsImportableRating* base);
+static gint data_imports_fspot_fspot_importable_rating_real_get_value (SpitDataImportsImportableRating* base);
+static void data_imports_fspot_fspot_importable_rating_finalize (GObject* obj);
+GType data_imports_fspot_fspot_tags_cache_get_type (void) G_GNUC_CONST;
+gpointer importable_database_table_ref (gpointer instance);
+void importable_database_table_unref (gpointer instance);
+GParamSpec* param_spec_importable_database_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_importable_database_table (GValue* value, gpointer v_object);
+void value_take_importable_database_table (GValue* value, gpointer v_object);
+gpointer value_get_importable_database_table (const GValue* value);
+GType importable_database_table_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_database_table_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_tags_table_get_type (void) G_GNUC_CONST;
+#define DATA_IMPORTS_FSPOT_FSPOT_TAGS_CACHE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE, DataImportsFSpotFSpotTagsCachePrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_TAGS_CACHE_DUMMY_PROPERTY
+};
+GQuark database_error_quark (void);
+DataImportsFSpotFSpotTagsCache* data_imports_fspot_fspot_tags_cache_new (DataImportsFSpotDbFSpotTagsTable* tags_table, GError** error);
+DataImportsFSpotFSpotTagsCache* data_imports_fspot_fspot_tags_cache_construct (GType object_type, DataImportsFSpotDbFSpotTagsTable* tags_table, GError** error);
+static gint64* _int64_dup (gint64* self);
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_tags_cache_get_tag (DataImportsFSpotFSpotTagsCache* self, DataImportsFSpotDbFSpotTagRow* tag_row, GError** error);
+static DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_tags_cache_get_tag_from_id (DataImportsFSpotFSpotTagsCache* self, gint64 tag_id, GError** error);
+DataImportsFSpotDbFSpotTagRow* data_imports_fspot_db_fspot_tags_table_get_by_id (DataImportsFSpotDbFSpotTagsTable* self, gint64 tag_id, GError** error);
+static void data_imports_fspot_fspot_tags_cache_finalize (GObject* obj);
+#define DATA_IMPORTS_FSPOT_FSPOT_DATA_IMPORTER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporterPrivate))
+enum {
+ DATA_IMPORTS_FSPOT_FSPOT_DATA_IMPORTER_DUMMY_PROPERTY
+};
+static gboolean data_imports_fspot_fspot_data_importer_real_is_running (SpitDataImportsDataImporter* base);
+static SpitDataImportsService* data_imports_fspot_fspot_data_importer_real_get_service (SpitDataImportsDataImporter* base);
+static void data_imports_fspot_fspot_data_importer_real_start (SpitDataImportsDataImporter* base);
+static void data_imports_fspot_fspot_data_importer_do_discover_importable_libraries (DataImportsFSpotFSpotDataImporter* self);
+static void data_imports_fspot_fspot_data_importer_real_stop (SpitDataImportsDataImporter* base);
+static void _vala_array_add2 (SpitDataImportsImportableLibrary*** array, int* length, int* size, SpitDataImportsImportableLibrary* value);
+static void data_imports_fspot_fspot_data_importer_real_on_library_selected (SpitDataImportsDataImporter* base, SpitDataImportsImportableLibrary* library);
+static void data_imports_fspot_fspot_data_importer_real_on_file_selected (SpitDataImportsDataImporter* base, GFile* file);
+GType data_imports_fspot_db_fspot_database_get_type (void) G_GNUC_CONST;
+DataImportsFSpotDbFSpotDatabase* data_imports_fspot_db_fspot_database_new (GFile* db_file, GError** error);
+DataImportsFSpotDbFSpotDatabase* data_imports_fspot_db_fspot_database_construct (GType object_type, GFile* db_file, GError** error);
+GType data_imports_fspot_db_fspot_photos_table_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_photo_versions_table_get_type (void) G_GNUC_CONST;
+GType data_imports_fspot_db_fspot_rolls_table_get_type (void) G_GNUC_CONST;
+GeeArrayList* data_imports_fspot_db_fspot_photos_table_get_all (DataImportsFSpotDbFSpotPhotosTable* self, GError** error);
+GeeArrayList* data_imports_fspot_db_fspot_tags_table_get_by_photo_id (DataImportsFSpotDbFSpotTagsTable* self, gint64 photo_id, GError** error);
+static gboolean data_imports_fspot_fspot_data_importer_is_tag_hidden (DataImportsFSpotFSpotDataImporter* self, DataImportsFSpotFSpotImportableTag* tag, gint64 hidden_tag_id);
+static gboolean data_imports_fspot_fspot_data_importer_is_tag_favorite (DataImportsFSpotFSpotDataImporter* self, DataImportsFSpotFSpotImportableTag* tag);
+static void _vala_array_add3 (DataImportsFSpotFSpotImportableTag*** array, int* length, int* size, DataImportsFSpotFSpotImportableTag* value);
+DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_rolls_table_get_by_id (DataImportsFSpotDbFSpotRollsTable* self, gint64 roll_id, GError** error);
+GeeArrayList* data_imports_fspot_db_fspot_photo_versions_table_get_by_photo_id (DataImportsFSpotDbFSpotPhotoVersionsTable* self, gint64 photo_id, GError** error);
+static void _vala_array_add4 (SpitDataImportsImportableMediaItem*** array, int* length, int* size, SpitDataImportsImportableMediaItem* value);
+static void _vala_array_add5 (SpitDataImportsImportableMediaItem*** array, int* length, int* size, SpitDataImportsImportableMediaItem* value);
+static void _vala_array_add6 (SpitDataImportsImportableMediaItem*** array, int* length, int* size, SpitDataImportsImportableMediaItem* value);
+void data_imports_fspot_fspot_data_importer_on_imported_items_count (DataImportsFSpotFSpotDataImporter* self, gint imported_items_count);
+static void _data_imports_fspot_fspot_data_importer_on_imported_items_count_spit_data_imports_imported_items_count_callback (gint imported_items_count, gpointer self);
+static gboolean data_imports_fspot_fspot_data_importer_is_tag_event (DataImportsFSpotFSpotDataImporter* self, DataImportsFSpotFSpotImportableTag* tag);
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_STOCK_ICON_EVENTS "stock_icon:emblem-event"
+#define DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_STOCK_ICON_FAV "stock_icon:emblem-favorite"
+static void data_imports_fspot_fspot_data_importer_finalize (GObject* obj);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+
+
+FSpotService* fspot_service_construct (GType object_type, GFile* resource_directory) {
+ FSpotService * self = NULL;
+ GdkPixbuf** _tmp0_ = NULL;
+ gint _tmp0__length1 = 0;
+#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (G_IS_FILE (resource_directory), NULL);
+#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (FSpotService*) g_object_new (object_type, NULL);
+#line 14 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_db_init ();
+#line 15 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = fspot_service_icon_pixbuf_set;
+#line 15 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0__length1 = fspot_service_icon_pixbuf_set_length1;
+#line 15 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp0_ == NULL) {
+#line 617 "FSpotImporter.c"
+ gint _tmp1_ = 0;
+ GdkPixbuf** _tmp2_ = NULL;
+#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = resources_load_from_resource ("/org/gnome/Shotwell/Imports/" FSPOT_SERVICE_ICON_FILENAME, &_tmp1_);
+#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ fspot_service_icon_pixbuf_set = (_vala_array_free (fspot_service_icon_pixbuf_set, fspot_service_icon_pixbuf_set_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ fspot_service_icon_pixbuf_set = _tmp2_;
+#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ fspot_service_icon_pixbuf_set_length1 = _tmp1_;
+#line 16 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _fspot_service_icon_pixbuf_set_size_ = fspot_service_icon_pixbuf_set_length1;
+#line 630 "FSpotImporter.c"
+ }
+#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 634 "FSpotImporter.c"
+}
+
+
+FSpotService* fspot_service_new (GFile* resource_directory) {
+#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return fspot_service_construct (TYPE_FSPOT_SERVICE, resource_directory);
+#line 641 "FSpotImporter.c"
+}
+
+
+static gint fspot_service_real_get_pluggable_interface (SpitPluggable* base, gint min_host_interface, gint max_host_interface) {
+ FSpotService * self;
+ gint result = 0;
+ gint _tmp0_ = 0;
+ gint _tmp1_ = 0;
+ gint _tmp2_ = 0;
+#line 21 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_FSPOT_SERVICE, FSpotService);
+#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = min_host_interface;
+#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = max_host_interface;
+#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = spit_negotiate_interfaces (_tmp0_, _tmp1_, SPIT_DATA_IMPORTS_CURRENT_INTERFACE);
+#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp2_;
+#line 22 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 663 "FSpotImporter.c"
+}
+
+
+static const gchar* fspot_service_real_get_id (SpitPluggable* base) {
+ FSpotService * self;
+ const gchar* result = NULL;
+#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_FSPOT_SERVICE, FSpotService);
+#line 27 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = "org.yorba.shotwell.dataimports.fspot";
+#line 27 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 676 "FSpotImporter.c"
+}
+
+
+static const gchar* fspot_service_real_get_pluggable_name (SpitPluggable* base) {
+ FSpotService * self;
+ const gchar* result = NULL;
+#line 30 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_FSPOT_SERVICE, FSpotService);
+#line 31 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = "F-Spot";
+#line 31 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 689 "FSpotImporter.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self ? g_object_ref (self) : NULL;
+#line 696 "FSpotImporter.c"
+}
+
+
+static GdkPixbuf** _vala_array_dup1 (GdkPixbuf** self, int length) {
+ GdkPixbuf** result;
+ int i;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = g_new0 (GdkPixbuf*, length + 1);
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ for (i = 0; i < length; i++) {
+#line 707 "FSpotImporter.c"
+ GdkPixbuf* _tmp0_ = NULL;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = _g_object_ref0 (self[i]);
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result[i] = _tmp0_;
+#line 713 "FSpotImporter.c"
+ }
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 717 "FSpotImporter.c"
+}
+
+
+static void fspot_service_real_get_info (SpitPluggable* base, SpitPluggableInfo* info) {
+ FSpotService * self;
+ gchar* _tmp0_ = NULL;
+ const gchar* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+ gchar* _tmp3_ = NULL;
+ gchar* _tmp4_ = NULL;
+ gchar* _tmp5_ = NULL;
+ gchar* _tmp6_ = NULL;
+ gchar* _tmp7_ = NULL;
+ GdkPixbuf** _tmp8_ = NULL;
+ gint _tmp8__length1 = 0;
+ GdkPixbuf** _tmp9_ = NULL;
+ gint _tmp9__length1 = 0;
+#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_FSPOT_SERVICE, FSpotService);
+#line 34 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_if_fail (info != NULL);
+#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = g_strdup ("Bruno Girin");
+#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).authors);
+#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).authors = _tmp0_;
+#line 36 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _ ("Copyright 2016 Software Freedom Conservancy Inc.");
+#line 36 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_strdup (_tmp1_);
+#line 36 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).copyright);
+#line 36 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).copyright = _tmp2_;
+#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = g_strdup (RESOURCES_TRANSLATORS);
+#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).translators);
+#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).translators = _tmp3_;
+#line 38 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = g_strdup (_VERSION);
+#line 38 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).version);
+#line 38 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).version = _tmp4_;
+#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = g_strdup (RESOURCES_WEBSITE_NAME);
+#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).website_name);
+#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).website_name = _tmp5_;
+#line 40 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = g_strdup (RESOURCES_WEBSITE_URL);
+#line 40 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).website_url);
+#line 40 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).website_url = _tmp6_;
+#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).is_license_wordwrapped = FALSE;
+#line 42 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = g_strdup (RESOURCES_LICENSE);
+#line 42 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 ((*info).license);
+#line 42 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).license = _tmp7_;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = fspot_service_icon_pixbuf_set;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8__length1 = fspot_service_icon_pixbuf_set_length1;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = (_tmp8_ != NULL) ? _vala_array_dup1 (_tmp8_, _tmp8__length1) : ((gpointer) _tmp8_);
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9__length1 = _tmp8__length1;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).icons = (_vala_array_free ((*info).icons, (*info).icons_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).icons = _tmp9_;
+#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*info).icons_length1 = _tmp9__length1;
+#line 799 "FSpotImporter.c"
+}
+
+
+static void fspot_service_real_activation (SpitPluggable* base, gboolean enabled) {
+ FSpotService * self;
+#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_FSPOT_SERVICE, FSpotService);
+#line 807 "FSpotImporter.c"
+}
+
+
+static SpitDataImportsDataImporter* fspot_service_real_create_data_importer (SpitDataImportsService* base, SpitDataImportsPluginHost* host) {
+ FSpotService * self;
+ SpitDataImportsDataImporter* result = NULL;
+ SpitDataImportsPluginHost* _tmp0_ = NULL;
+ DataImportsFSpotFSpotDataImporter* _tmp1_ = NULL;
+#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_FSPOT_SERVICE, FSpotService);
+#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (SPIT_DATA_IMPORTS_IS_PLUGIN_HOST (host), NULL);
+#line 50 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = host;
+#line 50 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = data_imports_fspot_fspot_data_importer_new (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_DATA_IMPORTS_TYPE_SERVICE, SpitDataImportsService), _tmp0_);
+#line 50 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, SPIT_DATA_IMPORTS_TYPE_DATA_IMPORTER, SpitDataImportsDataImporter);
+#line 50 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 828 "FSpotImporter.c"
+}
+
+
+static void fspot_service_class_init (FSpotServiceClass * klass) {
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ fspot_service_parent_class = g_type_class_peek_parent (klass);
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = fspot_service_finalize;
+#line 837 "FSpotImporter.c"
+}
+
+
+static void fspot_service_spit_pluggable_interface_init (SpitPluggableIface * iface) {
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ fspot_service_spit_pluggable_parent_iface = g_type_interface_peek_parent (iface);
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_pluggable_interface = (gint (*)(SpitPluggable*, gint, gint)) fspot_service_real_get_pluggable_interface;
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_id = (const gchar* (*)(SpitPluggable*)) fspot_service_real_get_id;
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_pluggable_name = (const gchar* (*)(SpitPluggable*)) fspot_service_real_get_pluggable_name;
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_info = (void (*)(SpitPluggable*, SpitPluggableInfo*)) fspot_service_real_get_info;
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->activation = (void (*)(SpitPluggable*, gboolean)) fspot_service_real_activation;
+#line 854 "FSpotImporter.c"
+}
+
+
+static void fspot_service_spit_data_imports_service_interface_init (SpitDataImportsServiceIface * iface) {
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ fspot_service_spit_data_imports_service_parent_iface = g_type_interface_peek_parent (iface);
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->create_data_importer = (SpitDataImportsDataImporter* (*)(SpitDataImportsService*, SpitDataImportsPluginHost*)) fspot_service_real_create_data_importer;
+#line 863 "FSpotImporter.c"
+}
+
+
+static void fspot_service_instance_init (FSpotService * self) {
+}
+
+
+static void fspot_service_finalize (GObject* obj) {
+ FSpotService * self;
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_FSPOT_SERVICE, FSpotService);
+#line 7 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (fspot_service_parent_class)->finalize (obj);
+#line 877 "FSpotImporter.c"
+}
+
+
+GType fspot_service_get_type (void) {
+ static volatile gsize fspot_service_type_id__volatile = 0;
+ if (g_once_init_enter (&fspot_service_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (FSpotServiceClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) fspot_service_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (FSpotService), 0, (GInstanceInitFunc) fspot_service_instance_init, NULL };
+ static const GInterfaceInfo spit_pluggable_info = { (GInterfaceInitFunc) fspot_service_spit_pluggable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ static const GInterfaceInfo spit_data_imports_service_info = { (GInterfaceInitFunc) fspot_service_spit_data_imports_service_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType fspot_service_type_id;
+ fspot_service_type_id = g_type_register_static (G_TYPE_OBJECT, "FSpotService", &g_define_type_info, 0);
+ g_type_add_interface_static (fspot_service_type_id, SPIT_TYPE_PLUGGABLE, &spit_pluggable_info);
+ g_type_add_interface_static (fspot_service_type_id, SPIT_DATA_IMPORTS_TYPE_SERVICE, &spit_data_imports_service_info);
+ g_once_init_leave (&fspot_service_type_id__volatile, fspot_service_type_id);
+ }
+ return fspot_service_type_id__volatile;
+}
+
+
+DataImportsFSpotFSpotImportableLibrary* data_imports_fspot_fspot_importable_library_construct (GType object_type, GFile* db_file) {
+ DataImportsFSpotFSpotImportableLibrary * self = NULL;
+ GFile* _tmp0_ = NULL;
+ GFile* _tmp1_ = NULL;
+#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (G_IS_FILE (db_file), NULL);
+#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotImportableLibrary*) g_object_new (object_type, NULL);
+#line 78 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = db_file;
+#line 78 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 78 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->db_file);
+#line 78 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->db_file = _tmp1_;
+#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 915 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableLibrary* data_imports_fspot_fspot_importable_library_new (GFile* db_file) {
+#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_importable_library_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, db_file);
+#line 922 "FSpotImporter.c"
+}
+
+
+GFile* data_imports_fspot_fspot_importable_library_get_db_file (DataImportsFSpotFSpotImportableLibrary* self) {
+ GFile* result = NULL;
+ GFile* _tmp0_ = NULL;
+ GFile* _tmp1_ = NULL;
+#line 81 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_LIBRARY (self), NULL);
+#line 82 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->db_file;
+#line 82 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 82 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 82 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 940 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_library_real_get_display_name (SpitDataImportsImportableLibrary* base) {
+ DataImportsFSpotFSpotImportableLibrary * self;
+ gchar* result = NULL;
+ const gchar* _tmp0_ = NULL;
+ GFile* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+ gchar* _tmp3_ = NULL;
+ gchar* _tmp4_ = NULL;
+ gchar* _tmp5_ = NULL;
+#line 85 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibrary);
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = _ ("F-Spot library: %s");
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = self->priv->db_file;
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_file_get_path (_tmp1_);
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _tmp2_;
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = g_strdup_printf (_tmp0_, _tmp3_);
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _tmp4_;
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp3_);
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp5_;
+#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 973 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_library_class_init (DataImportsFSpotFSpotImportableLibraryClass * klass) {
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_library_parent_class = g_type_class_peek_parent (klass);
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotImportableLibraryPrivate));
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_importable_library_finalize;
+#line 984 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_library_spit_data_imports_importable_library_interface_init (SpitDataImportsImportableLibraryIface * iface) {
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_library_spit_data_imports_importable_library_parent_iface = g_type_interface_peek_parent (iface);
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_display_name = (gchar* (*)(SpitDataImportsImportableLibrary*)) data_imports_fspot_fspot_importable_library_real_get_display_name;
+#line 993 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_library_instance_init (DataImportsFSpotFSpotImportableLibrary * self) {
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_LIBRARY_GET_PRIVATE (self);
+#line 1000 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_library_finalize (GObject* obj) {
+ DataImportsFSpotFSpotImportableLibrary * self;
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibrary);
+#line 75 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->db_file);
+#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_importable_library_parent_class)->finalize (obj);
+#line 1012 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_importable_library_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_importable_library_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_importable_library_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotImportableLibraryClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_importable_library_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotImportableLibrary), 0, (GInstanceInitFunc) data_imports_fspot_fspot_importable_library_instance_init, NULL };
+ static const GInterfaceInfo spit_data_imports_importable_library_info = { (GInterfaceInitFunc) data_imports_fspot_fspot_importable_library_spit_data_imports_importable_library_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType data_imports_fspot_fspot_importable_library_type_id;
+ data_imports_fspot_fspot_importable_library_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotImportableLibrary", &g_define_type_info, 0);
+ g_type_add_interface_static (data_imports_fspot_fspot_importable_library_type_id, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_LIBRARY, &spit_data_imports_importable_library_info);
+ g_once_init_leave (&data_imports_fspot_fspot_importable_library_type_id__volatile, data_imports_fspot_fspot_importable_library_type_id);
+ }
+ return data_imports_fspot_fspot_importable_library_type_id__volatile;
+}
+
+
+static DataImportsFSpotFSpotImportableTag** _vala_array_dup2 (DataImportsFSpotFSpotImportableTag** self, int length) {
+ DataImportsFSpotFSpotImportableTag** result;
+ int i;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = g_new0 (DataImportsFSpotFSpotImportableTag*, length + 1);
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ for (i = 0; i < length; i++) {
+#line 1037 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableTag* _tmp0_ = NULL;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = _g_object_ref0 (self[i]);
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result[i] = _tmp0_;
+#line 1043 "FSpotImporter.c"
+ }
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1047 "FSpotImporter.c"
+}
+
+
+static time_t* _time_t_dup (time_t* self) {
+ time_t* dup;
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ dup = g_new0 (time_t, 1);
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ memcpy (dup, self, sizeof (time_t));
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return dup;
+#line 1059 "FSpotImporter.c"
+}
+
+
+static gpointer __time_t_dup0 (gpointer self) {
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self ? _time_t_dup (self) : NULL;
+#line 1066 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableItem* data_imports_fspot_fspot_importable_item_construct (GType object_type, DataImportsFSpotDbFSpotPhotoRow* photo_row, DataImportsFSpotDbFSpotPhotoVersionRow* photo_version_row, DataImportsFSpotDbFSpotRollRow* roll_row, DataImportsFSpotFSpotImportableTag** tags, int tags_length1, DataImportsFSpotFSpotImportableEvent* event, gboolean is_hidden, gboolean is_favorite) {
+ DataImportsFSpotFSpotImportableItem * self = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp0_ = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp1_ = NULL;
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp2_ = NULL;
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp3_ = NULL;
+ DataImportsFSpotDbFSpotRollRow* _tmp4_ = NULL;
+ DataImportsFSpotDbFSpotRollRow* _tmp5_ = NULL;
+ DataImportsFSpotFSpotImportableTag** _tmp6_ = NULL;
+ gint _tmp6__length1 = 0;
+ DataImportsFSpotFSpotImportableTag** _tmp7_ = NULL;
+ gint _tmp7__length1 = 0;
+ DataImportsFSpotFSpotImportableEvent* _tmp8_ = NULL;
+ DataImportsFSpotFSpotImportableEvent* _tmp9_ = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp10_ = NULL;
+ time_t _tmp11_ = 0;
+ time_t* _tmp12_ = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp13_ = NULL;
+ gint _tmp14_ = 0;
+ gchar* _tmp23_ = NULL;
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp24_ = NULL;
+ gchar* _tmp31_ = NULL;
+ const gchar* _tmp32_ = NULL;
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp33_ = NULL;
+ gchar* _tmp38_ = NULL;
+ gboolean _tmp39_ = FALSE;
+ const gchar* _tmp40_ = NULL;
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_ROW (photo_row), NULL);
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail ((photo_version_row == NULL) || DATA_IMPORTS_FSPOT_DB_IS_FSPOT_PHOTO_VERSION_ROW (photo_version_row), NULL);
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail ((roll_row == NULL) || DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLL_ROW (roll_row), NULL);
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail ((event == NULL) || DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_EVENT (event), NULL);
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotImportableItem*) g_object_new (object_type, NULL);
+#line 110 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = photo_row;
+#line 110 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 110 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->photo_row);
+#line 110 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->photo_row = _tmp1_;
+#line 111 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = photo_version_row;
+#line 111 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _g_object_ref0 (_tmp2_);
+#line 111 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->photo_version_row);
+#line 111 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->photo_version_row = _tmp3_;
+#line 112 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = roll_row;
+#line 112 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _g_object_ref0 (_tmp4_);
+#line 112 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->roll_row);
+#line 112 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->roll_row = _tmp5_;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = tags;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6__length1 = tags_length1;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = (_tmp6_ != NULL) ? _vala_array_dup2 (_tmp6_, _tmp6__length1) : ((gpointer) _tmp6_);
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7__length1 = _tmp6__length1;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->tags = (_vala_array_free (self->priv->tags, self->priv->tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->tags = _tmp7_;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->tags_length1 = _tmp7__length1;
+#line 113 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->_tags_size_ = self->priv->tags_length1;
+#line 114 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = event;
+#line 114 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = _g_object_ref0 (_tmp8_);
+#line 114 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->event);
+#line 114 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->event = _tmp9_;
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp10_ = photo_row;
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp11_ = _tmp10_->time;
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp12_ = __time_t_dup0 (&_tmp11_);
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->date_time);
+#line 115 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->date_time = _tmp12_;
+#line 116 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp13_ = photo_row;
+#line 116 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = _tmp13_->rating;
+#line 116 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp14_ > 0) {
+#line 1171 "FSpotImporter.c"
+ DataImportsFSpotDbFSpotPhotoRow* _tmp15_ = NULL;
+ gint _tmp16_ = 0;
+ DataImportsFSpotFSpotImportableRating* _tmp17_ = NULL;
+#line 117 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp15_ = photo_row;
+#line 117 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp16_ = _tmp15_->rating;
+#line 117 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp17_ = data_imports_fspot_fspot_importable_rating_new (_tmp16_);
+#line 117 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->rating);
+#line 117 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->rating = _tmp17_;
+#line 1185 "FSpotImporter.c"
+ } else {
+ gboolean _tmp18_ = FALSE;
+#line 118 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp18_ = is_hidden;
+#line 118 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp18_) {
+#line 1192 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableRating* _tmp19_ = NULL;
+#line 119 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp19_ = data_imports_fspot_fspot_importable_rating_new (DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_REJECTED);
+#line 119 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->rating);
+#line 119 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->rating = _tmp19_;
+#line 1200 "FSpotImporter.c"
+ } else {
+ gboolean _tmp20_ = FALSE;
+#line 120 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp20_ = is_favorite;
+#line 120 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp20_) {
+#line 1207 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableRating* _tmp21_ = NULL;
+#line 121 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_ = data_imports_fspot_fspot_importable_rating_new (5);
+#line 121 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->rating);
+#line 121 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->rating = _tmp21_;
+#line 1215 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableRating* _tmp22_ = NULL;
+#line 123 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp22_ = data_imports_fspot_fspot_importable_rating_new (DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_UNRATED);
+#line 123 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->rating);
+#line 123 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->rating = _tmp22_;
+#line 1224 "FSpotImporter.c"
+ }
+ }
+ }
+#line 126 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp24_ = photo_version_row;
+#line 126 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp24_ != NULL) {
+#line 1232 "FSpotImporter.c"
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp25_ = NULL;
+ GFile* _tmp26_ = NULL;
+ gchar* _tmp27_ = NULL;
+#line 127 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp25_ = photo_version_row;
+#line 127 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp26_ = _tmp25_->base_path;
+#line 127 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp27_ = g_file_get_path (_tmp26_);
+#line 127 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp23_);
+#line 127 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp23_ = _tmp27_;
+#line 1246 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotDbFSpotPhotoRow* _tmp28_ = NULL;
+ GFile* _tmp29_ = NULL;
+ gchar* _tmp30_ = NULL;
+#line 128 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp28_ = photo_row;
+#line 128 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp29_ = _tmp28_->base_path;
+#line 128 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp30_ = g_file_get_path (_tmp29_);
+#line 128 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp23_);
+#line 128 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp23_ = _tmp30_;
+#line 1261 "FSpotImporter.c"
+ }
+#line 126 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp31_ = g_strdup (_tmp23_);
+#line 126 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->folder_path);
+#line 126 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->folder_path = _tmp31_;
+#line 129 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp33_ = photo_version_row;
+#line 129 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp33_ != NULL) {
+#line 1273 "FSpotImporter.c"
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp34_ = NULL;
+ const gchar* _tmp35_ = NULL;
+#line 130 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp34_ = photo_version_row;
+#line 130 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp35_ = _tmp34_->filename;
+#line 130 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp32_ = _tmp35_;
+#line 1282 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotDbFSpotPhotoRow* _tmp36_ = NULL;
+ const gchar* _tmp37_ = NULL;
+#line 131 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp36_ = photo_row;
+#line 131 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp37_ = _tmp36_->filename;
+#line 131 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp32_ = _tmp37_;
+#line 1292 "FSpotImporter.c"
+ }
+#line 129 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp38_ = g_strdup (_tmp32_);
+#line 129 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->filename);
+#line 129 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->filename = _tmp38_;
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp40_ = self->priv->folder_path;
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp40_ != NULL) {
+#line 1304 "FSpotImporter.c"
+ const gchar* _tmp41_ = NULL;
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp41_ = self->priv->filename;
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp39_ = _tmp41_ != NULL;
+#line 1310 "FSpotImporter.c"
+ } else {
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp39_ = FALSE;
+#line 1314 "FSpotImporter.c"
+ }
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp39_) {
+#line 1318 "FSpotImporter.c"
+ GFile* photo = NULL;
+ const gchar* _tmp42_ = NULL;
+ GFile* _tmp43_ = NULL;
+ GFile* _tmp44_ = NULL;
+ const gchar* _tmp45_ = NULL;
+ GFile* _tmp46_ = NULL;
+ GFile* _tmp47_ = NULL;
+ GFile* _tmp48_ = NULL;
+ gboolean _tmp49_ = FALSE;
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp42_ = self->priv->folder_path;
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp43_ = g_file_new_for_path (_tmp42_);
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp44_ = _tmp43_;
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp45_ = self->priv->filename;
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp46_ = g_file_get_child (_tmp44_, _tmp45_);
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp47_ = _tmp46_;
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp44_);
+#line 137 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo = _tmp47_;
+#line 140 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp48_ = photo;
+#line 140 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp49_ = g_file_query_exists (_tmp48_, NULL);
+#line 140 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!_tmp49_) {
+#line 1350 "FSpotImporter.c"
+ const gchar* _tmp50_ = NULL;
+ gchar* _tmp51_ = NULL;
+ const gchar* _tmp52_ = NULL;
+ gchar* _tmp53_ = NULL;
+#line 141 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp50_ = self->priv->folder_path;
+#line 141 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp51_ = data_imports_fspot_fspot_importable_item_decode_url (self, _tmp50_);
+#line 141 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->folder_path);
+#line 141 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->folder_path = _tmp51_;
+#line 142 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp52_ = self->priv->filename;
+#line 142 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp53_ = data_imports_fspot_fspot_importable_item_decode_url (self, _tmp52_);
+#line 142 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->filename);
+#line 142 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->filename = _tmp53_;
+#line 1371 "FSpotImporter.c"
+ }
+#line 135 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo);
+#line 1375 "FSpotImporter.c"
+ }
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp23_);
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 1381 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableItem* data_imports_fspot_fspot_importable_item_new (DataImportsFSpotDbFSpotPhotoRow* photo_row, DataImportsFSpotDbFSpotPhotoVersionRow* photo_version_row, DataImportsFSpotDbFSpotRollRow* roll_row, DataImportsFSpotFSpotImportableTag** tags, int tags_length1, DataImportsFSpotFSpotImportableEvent* event, gboolean is_hidden, gboolean is_favorite) {
+#line 101 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_importable_item_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, photo_row, photo_version_row, roll_row, tags, tags_length1, event, is_hidden, is_favorite);
+#line 1388 "FSpotImporter.c"
+}
+
+
+static void _vala_array_add1 (SpitDataImportsImportableTag*** array, int* length, int* size, SpitDataImportsImportableTag* value) {
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if ((*length) == (*size)) {
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *size = (*size) ? (2 * (*size)) : 4;
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *array = g_renew (SpitDataImportsImportableTag*, *array, (*size) + 1);
+#line 1399 "FSpotImporter.c"
+ }
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[(*length)++] = value;
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[*length] = NULL;
+#line 1405 "FSpotImporter.c"
+}
+
+
+static SpitDataImportsImportableTag** data_imports_fspot_fspot_importable_item_real_get_tags (SpitDataImportsImportableMediaItem* base, int* result_length1) {
+ DataImportsFSpotFSpotImportableItem * self;
+ SpitDataImportsImportableTag** result = NULL;
+ SpitDataImportsImportableTag** importable_tags = NULL;
+ SpitDataImportsImportableTag** _tmp0_ = NULL;
+ gint importable_tags_length1 = 0;
+ gint _importable_tags_size_ = 0;
+ DataImportsFSpotFSpotImportableTag** _tmp1_ = NULL;
+ gint _tmp1__length1 = 0;
+ SpitDataImportsImportableTag** _tmp6_ = NULL;
+ gint _tmp6__length1 = 0;
+#line 147 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 148 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = g_new0 (SpitDataImportsImportableTag*, 0 + 1);
+#line 148 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_tags = _tmp0_;
+#line 148 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_tags_length1 = 0;
+#line 148 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _importable_tags_size_ = importable_tags_length1;
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = self->priv->tags;
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1__length1 = self->priv->tags_length1;
+#line 1434 "FSpotImporter.c"
+ {
+ DataImportsFSpotFSpotImportableTag** tag_collection = NULL;
+ gint tag_collection_length1 = 0;
+ gint _tag_collection_size_ = 0;
+ gint tag_it = 0;
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag_collection = _tmp1_;
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag_collection_length1 = _tmp1__length1;
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ for (tag_it = 0; tag_it < _tmp1__length1; tag_it = tag_it + 1) {
+#line 1446 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableTag* _tmp2_ = NULL;
+ DataImportsFSpotFSpotImportableTag* tag = NULL;
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = _g_object_ref0 (tag_collection[tag_it]);
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag = _tmp2_;
+#line 1453 "FSpotImporter.c"
+ {
+ SpitDataImportsImportableTag** _tmp3_ = NULL;
+ gint _tmp3__length1 = 0;
+ DataImportsFSpotFSpotImportableTag* _tmp4_ = NULL;
+ SpitDataImportsImportableTag* _tmp5_ = NULL;
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = importable_tags;
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3__length1 = importable_tags_length1;
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = tag;
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_TAG, SpitDataImportsImportableTag));
+#line 150 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _vala_array_add1 (&importable_tags, &importable_tags_length1, &_importable_tags_size_, _tmp5_);
+#line 149 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 1471 "FSpotImporter.c"
+ }
+ }
+ }
+#line 151 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = importable_tags;
+#line 151 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6__length1 = importable_tags_length1;
+#line 151 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (result_length1) {
+#line 151 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *result_length1 = _tmp6__length1;
+#line 1483 "FSpotImporter.c"
+ }
+#line 151 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp6_;
+#line 151 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1489 "FSpotImporter.c"
+}
+
+
+static SpitDataImportsImportableEvent* data_imports_fspot_fspot_importable_item_real_get_event (SpitDataImportsImportableMediaItem* base) {
+ DataImportsFSpotFSpotImportableItem * self;
+ SpitDataImportsImportableEvent* result = NULL;
+ DataImportsFSpotFSpotImportableEvent* _tmp0_ = NULL;
+ SpitDataImportsImportableEvent* _tmp1_ = NULL;
+#line 154 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 155 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->event;
+#line 155 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_EVENT, SpitDataImportsImportableEvent));
+#line 155 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 155 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1508 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_item_real_get_folder_path (SpitDataImportsImportableMediaItem* base) {
+ DataImportsFSpotFSpotImportableItem * self;
+ gchar* result = NULL;
+ const gchar* _tmp0_ = NULL;
+ gchar* _tmp1_ = NULL;
+#line 158 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 159 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->folder_path;
+#line 159 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = g_strdup (_tmp0_);
+#line 159 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 159 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1527 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_item_real_get_filename (SpitDataImportsImportableMediaItem* base) {
+ DataImportsFSpotFSpotImportableItem * self;
+ gchar* result = NULL;
+ const gchar* _tmp0_ = NULL;
+ gchar* _tmp1_ = NULL;
+#line 162 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 163 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->filename;
+#line 163 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = g_strdup (_tmp0_);
+#line 163 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 163 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1546 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_item_real_get_title (SpitDataImportsImportableMediaItem* base) {
+ DataImportsFSpotFSpotImportableItem * self;
+ gchar* result = NULL;
+ const gchar* _tmp0_ = NULL;
+ gboolean _tmp1_ = FALSE;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp2_ = NULL;
+ const gchar* _tmp3_ = NULL;
+ gchar* _tmp8_ = NULL;
+#line 166 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = self->priv->photo_row;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _tmp2_->description;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp3_ == NULL) {
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = TRUE;
+#line 1568 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotDbFSpotPhotoRow* _tmp4_ = NULL;
+ const gchar* _tmp5_ = NULL;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = self->priv->photo_row;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _tmp4_->description;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = g_strcmp0 (_tmp5_, "") == 0;
+#line 1578 "FSpotImporter.c"
+ }
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp1_) {
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = NULL;
+#line 1584 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotDbFSpotPhotoRow* _tmp6_ = NULL;
+ const gchar* _tmp7_ = NULL;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = self->priv->photo_row;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = _tmp6_->description;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = _tmp7_;
+#line 1594 "FSpotImporter.c"
+ }
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = g_strdup (_tmp0_);
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp8_;
+#line 167 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1602 "FSpotImporter.c"
+}
+
+
+static SpitDataImportsImportableRating* data_imports_fspot_fspot_importable_item_real_get_rating (SpitDataImportsImportableMediaItem* base) {
+ DataImportsFSpotFSpotImportableItem * self;
+ SpitDataImportsImportableRating* result = NULL;
+ DataImportsFSpotFSpotImportableRating* _tmp0_ = NULL;
+ SpitDataImportsImportableRating* _tmp1_ = NULL;
+#line 170 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 171 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->rating;
+#line 171 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_RATING, SpitDataImportsImportableRating));
+#line 171 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 171 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1621 "FSpotImporter.c"
+}
+
+
+static time_t* data_imports_fspot_fspot_importable_item_real_get_exposure_time (SpitDataImportsImportableMediaItem* base) {
+ DataImportsFSpotFSpotImportableItem * self;
+ time_t* result = NULL;
+ time_t* _tmp0_ = NULL;
+ time_t* _tmp1_ = NULL;
+#line 174 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 175 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->date_time;
+#line 175 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = __time_t_dup0 (_tmp0_);
+#line 175 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 175 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 1640 "FSpotImporter.c"
+}
+
+
+static gint string_index_of_char (const gchar* self, gunichar c, gint start_index) {
+ gint result = 0;
+ gchar* _result_ = NULL;
+ gint _tmp0_ = 0;
+ gunichar _tmp1_ = 0U;
+ gchar* _tmp2_ = NULL;
+ gchar* _tmp3_ = NULL;
+#line 1007 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (self != NULL, 0);
+#line 1008 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp0_ = start_index;
+#line 1008 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp1_ = c;
+#line 1008 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp2_ = g_utf8_strchr (((gchar*) self) + _tmp0_, (gssize) -1, _tmp1_);
+#line 1008 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _result_ = _tmp2_;
+#line 1010 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp3_ = _result_;
+#line 1010 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp3_ != NULL) {
+#line 1665 "FSpotImporter.c"
+ gchar* _tmp4_ = NULL;
+#line 1011 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp4_ = _result_;
+#line 1011 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = (gint) (_tmp4_ - ((gchar*) self));
+#line 1011 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1673 "FSpotImporter.c"
+ } else {
+#line 1013 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = -1;
+#line 1013 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1679 "FSpotImporter.c"
+ }
+}
+
+
+static gchar* string_slice (const gchar* self, glong start, glong end) {
+ gchar* result = NULL;
+ glong string_length = 0L;
+ gint _tmp0_ = 0;
+ gint _tmp1_ = 0;
+ glong _tmp2_ = 0L;
+ glong _tmp5_ = 0L;
+ gboolean _tmp8_ = FALSE;
+ glong _tmp9_ = 0L;
+ gboolean _tmp12_ = FALSE;
+ glong _tmp13_ = 0L;
+ glong _tmp16_ = 0L;
+ glong _tmp17_ = 0L;
+ glong _tmp18_ = 0L;
+ glong _tmp19_ = 0L;
+ glong _tmp20_ = 0L;
+ gchar* _tmp21_ = NULL;
+#line 1328 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (self != NULL, NULL);
+#line 1329 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp0_ = strlen (self);
+#line 1329 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp1_ = _tmp0_;
+#line 1329 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ string_length = (glong) _tmp1_;
+#line 1330 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp2_ = start;
+#line 1330 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp2_ < ((glong) 0)) {
+#line 1713 "FSpotImporter.c"
+ glong _tmp3_ = 0L;
+ glong _tmp4_ = 0L;
+#line 1331 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp3_ = string_length;
+#line 1331 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp4_ = start;
+#line 1331 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ start = _tmp3_ + _tmp4_;
+#line 1722 "FSpotImporter.c"
+ }
+#line 1333 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp5_ = end;
+#line 1333 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp5_ < ((glong) 0)) {
+#line 1728 "FSpotImporter.c"
+ glong _tmp6_ = 0L;
+ glong _tmp7_ = 0L;
+#line 1334 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp6_ = string_length;
+#line 1334 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp7_ = end;
+#line 1334 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ end = _tmp6_ + _tmp7_;
+#line 1737 "FSpotImporter.c"
+ }
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp9_ = start;
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp9_ >= ((glong) 0)) {
+#line 1743 "FSpotImporter.c"
+ glong _tmp10_ = 0L;
+ glong _tmp11_ = 0L;
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp10_ = start;
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp11_ = string_length;
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp8_ = _tmp10_ <= _tmp11_;
+#line 1752 "FSpotImporter.c"
+ } else {
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp8_ = FALSE;
+#line 1756 "FSpotImporter.c"
+ }
+#line 1336 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (_tmp8_, NULL);
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp13_ = end;
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp13_ >= ((glong) 0)) {
+#line 1764 "FSpotImporter.c"
+ glong _tmp14_ = 0L;
+ glong _tmp15_ = 0L;
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp14_ = end;
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp15_ = string_length;
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp12_ = _tmp14_ <= _tmp15_;
+#line 1773 "FSpotImporter.c"
+ } else {
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp12_ = FALSE;
+#line 1777 "FSpotImporter.c"
+ }
+#line 1337 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (_tmp12_, NULL);
+#line 1338 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp16_ = start;
+#line 1338 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp17_ = end;
+#line 1338 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (_tmp16_ <= _tmp17_, NULL);
+#line 1339 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp18_ = start;
+#line 1339 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp19_ = end;
+#line 1339 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp20_ = start;
+#line 1339 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp21_ = g_strndup (((gchar*) self) + _tmp18_, (gsize) (_tmp19_ - _tmp20_));
+#line 1339 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = _tmp21_;
+#line 1339 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1799 "FSpotImporter.c"
+}
+
+
+static gchar string_get (const gchar* self, glong index) {
+ gchar result = '\0';
+ glong _tmp0_ = 0L;
+ gchar _tmp1_ = '\0';
+#line 1086 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (self != NULL, '\0');
+#line 1087 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp0_ = index;
+#line 1087 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp1_ = ((gchar*) self)[_tmp0_];
+#line 1087 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = _tmp1_;
+#line 1087 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1817 "FSpotImporter.c"
+}
+
+
+static glong string_strnlen (gchar* str, glong maxlen) {
+ glong result = 0L;
+ gchar* end = NULL;
+ gchar* _tmp0_ = NULL;
+ glong _tmp1_ = 0L;
+ gchar* _tmp2_ = NULL;
+ gchar* _tmp3_ = NULL;
+#line 1295 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp0_ = str;
+#line 1295 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp1_ = maxlen;
+#line 1295 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_);
+#line 1295 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ end = _tmp2_;
+#line 1296 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp3_ = end;
+#line 1296 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp3_ == NULL) {
+#line 1840 "FSpotImporter.c"
+ glong _tmp4_ = 0L;
+#line 1297 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp4_ = maxlen;
+#line 1297 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = _tmp4_;
+#line 1297 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1848 "FSpotImporter.c"
+ } else {
+ gchar* _tmp5_ = NULL;
+ gchar* _tmp6_ = NULL;
+#line 1299 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp5_ = end;
+#line 1299 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp6_ = str;
+#line 1299 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = (glong) (_tmp5_ - _tmp6_);
+#line 1299 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1860 "FSpotImporter.c"
+ }
+}
+
+
+static gchar* string_substring (const gchar* self, glong offset, glong len) {
+ gchar* result = NULL;
+ glong string_length = 0L;
+ gboolean _tmp0_ = FALSE;
+ glong _tmp1_ = 0L;
+ glong _tmp8_ = 0L;
+ glong _tmp14_ = 0L;
+ glong _tmp17_ = 0L;
+ glong _tmp18_ = 0L;
+ glong _tmp19_ = 0L;
+ glong _tmp20_ = 0L;
+ glong _tmp21_ = 0L;
+ gchar* _tmp22_ = NULL;
+#line 1306 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (self != NULL, NULL);
+#line 1308 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp1_ = offset;
+#line 1308 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp1_ >= ((glong) 0)) {
+#line 1884 "FSpotImporter.c"
+ glong _tmp2_ = 0L;
+#line 1308 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp2_ = len;
+#line 1308 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp0_ = _tmp2_ >= ((glong) 0);
+#line 1890 "FSpotImporter.c"
+ } else {
+#line 1308 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp0_ = FALSE;
+#line 1894 "FSpotImporter.c"
+ }
+#line 1308 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp0_) {
+#line 1898 "FSpotImporter.c"
+ glong _tmp3_ = 0L;
+ glong _tmp4_ = 0L;
+ glong _tmp5_ = 0L;
+#line 1310 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp3_ = offset;
+#line 1310 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp4_ = len;
+#line 1310 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp5_ = string_strnlen ((gchar*) self, _tmp3_ + _tmp4_);
+#line 1310 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ string_length = _tmp5_;
+#line 1910 "FSpotImporter.c"
+ } else {
+ gint _tmp6_ = 0;
+ gint _tmp7_ = 0;
+#line 1312 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp6_ = strlen (self);
+#line 1312 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp7_ = _tmp6_;
+#line 1312 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ string_length = (glong) _tmp7_;
+#line 1920 "FSpotImporter.c"
+ }
+#line 1315 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp8_ = offset;
+#line 1315 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp8_ < ((glong) 0)) {
+#line 1926 "FSpotImporter.c"
+ glong _tmp9_ = 0L;
+ glong _tmp10_ = 0L;
+ glong _tmp11_ = 0L;
+#line 1316 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp9_ = string_length;
+#line 1316 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp10_ = offset;
+#line 1316 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ offset = _tmp9_ + _tmp10_;
+#line 1317 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp11_ = offset;
+#line 1317 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (_tmp11_ >= ((glong) 0), NULL);
+#line 1940 "FSpotImporter.c"
+ } else {
+ glong _tmp12_ = 0L;
+ glong _tmp13_ = 0L;
+#line 1319 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp12_ = offset;
+#line 1319 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp13_ = string_length;
+#line 1319 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail (_tmp12_ <= _tmp13_, NULL);
+#line 1950 "FSpotImporter.c"
+ }
+#line 1321 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp14_ = len;
+#line 1321 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ if (_tmp14_ < ((glong) 0)) {
+#line 1956 "FSpotImporter.c"
+ glong _tmp15_ = 0L;
+ glong _tmp16_ = 0L;
+#line 1322 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp15_ = string_length;
+#line 1322 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp16_ = offset;
+#line 1322 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ len = _tmp15_ - _tmp16_;
+#line 1965 "FSpotImporter.c"
+ }
+#line 1324 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp17_ = offset;
+#line 1324 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp18_ = len;
+#line 1324 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp19_ = string_length;
+#line 1324 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ g_return_val_if_fail ((_tmp17_ + _tmp18_) <= _tmp19_, NULL);
+#line 1325 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp20_ = offset;
+#line 1325 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp21_ = len;
+#line 1325 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ _tmp22_ = g_strndup (((gchar*) self) + _tmp20_, (gsize) _tmp21_);
+#line 1325 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ result = _tmp22_;
+#line 1325 "/usr/share/vala-0.32/vapi/glib-2.0.vapi"
+ return result;
+#line 1985 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_item_decode_url (DataImportsFSpotFSpotImportableItem* self, const gchar* url) {
+ gchar* result = NULL;
+ GString* builder = NULL;
+ GString* _tmp0_ = NULL;
+ GString* _tmp49_ = NULL;
+ const gchar* _tmp50_ = NULL;
+ gchar* _tmp51_ = NULL;
+#line 178 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_ITEM (self), NULL);
+#line 178 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (url != NULL, NULL);
+#line 179 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = g_string_new ("");
+#line 179 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ builder = _tmp0_;
+#line 2004 "FSpotImporter.c"
+ {
+ gint idx = 0;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ idx = 0;
+#line 2009 "FSpotImporter.c"
+ {
+ gboolean _tmp1_ = FALSE;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = TRUE;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ while (TRUE) {
+#line 2016 "FSpotImporter.c"
+ gint _tmp2_ = 0;
+ const gchar* _tmp3_ = NULL;
+ gint _tmp4_ = 0;
+ gint _tmp5_ = 0;
+ gint cidx = 0;
+ const gchar* _tmp6_ = NULL;
+ gint _tmp7_ = 0;
+ gint _tmp8_ = 0;
+ gint _tmp9_ = 0;
+ gint _tmp10_ = 0;
+ gint _tmp17_ = 0;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!_tmp1_) {
+#line 2030 "FSpotImporter.c"
+ }
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = FALSE;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = idx;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = url;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = strlen (_tmp3_);
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _tmp4_;
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!(_tmp2_ < _tmp5_)) {
+#line 180 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ break;
+#line 2046 "FSpotImporter.c"
+ }
+#line 181 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = url;
+#line 181 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = idx;
+#line 181 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = string_index_of_char (_tmp6_, (gunichar) '%', _tmp7_);
+#line 181 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ cidx = _tmp8_;
+#line 182 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = cidx;
+#line 182 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp10_ = idx;
+#line 182 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp9_ > _tmp10_) {
+#line 2062 "FSpotImporter.c"
+ GString* _tmp11_ = NULL;
+ const gchar* _tmp12_ = NULL;
+ gint _tmp13_ = 0;
+ gint _tmp14_ = 0;
+ gchar* _tmp15_ = NULL;
+ gchar* _tmp16_ = NULL;
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp11_ = builder;
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp12_ = url;
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp13_ = idx;
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = cidx;
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp15_ = string_slice (_tmp12_, (glong) _tmp13_, (glong) _tmp14_);
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp16_ = _tmp15_;
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_string_append (_tmp11_, _tmp16_);
+#line 183 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp16_);
+#line 2085 "FSpotImporter.c"
+ }
+#line 185 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp17_ = cidx;
+#line 185 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp17_ >= 0) {
+#line 2091 "FSpotImporter.c"
+ gint _tmp18_ = 0;
+ const gchar* _tmp19_ = NULL;
+ gint _tmp20_ = 0;
+ gint _tmp21_ = 0;
+#line 186 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp18_ = cidx;
+#line 186 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp19_ = url;
+#line 186 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp20_ = strlen (_tmp19_);
+#line 186 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_ = _tmp20_;
+#line 186 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp18_ < (_tmp21_ - 2)) {
+#line 2106 "FSpotImporter.c"
+ gchar c1 = '\0';
+ const gchar* _tmp22_ = NULL;
+ gint _tmp23_ = 0;
+ gchar _tmp24_ = '\0';
+ gchar c2 = '\0';
+ const gchar* _tmp25_ = NULL;
+ gint _tmp26_ = 0;
+ gchar _tmp27_ = '\0';
+ gboolean _tmp28_ = FALSE;
+ gchar _tmp29_ = '\0';
+ gboolean _tmp30_ = FALSE;
+ gint _tmp39_ = 0;
+#line 187 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp22_ = url;
+#line 187 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp23_ = cidx;
+#line 187 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp24_ = string_get (_tmp22_, (glong) (_tmp23_ + 1));
+#line 187 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ c1 = _tmp24_;
+#line 188 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp25_ = url;
+#line 188 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp26_ = cidx;
+#line 188 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp27_ = string_get (_tmp25_, (glong) (_tmp26_ + 2));
+#line 188 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ c2 = _tmp27_;
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp29_ = c1;
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp30_ = g_ascii_isxdigit (_tmp29_);
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp30_) {
+#line 2141 "FSpotImporter.c"
+ gchar _tmp31_ = '\0';
+ gboolean _tmp32_ = FALSE;
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp31_ = c1;
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp32_ = g_ascii_isxdigit (_tmp31_);
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp28_ = _tmp32_;
+#line 2150 "FSpotImporter.c"
+ } else {
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp28_ = FALSE;
+#line 2154 "FSpotImporter.c"
+ }
+#line 189 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp28_) {
+#line 2158 "FSpotImporter.c"
+ gint ccode = 0;
+ gchar _tmp33_ = '\0';
+ gint _tmp34_ = 0;
+ gchar _tmp35_ = '\0';
+ gint _tmp36_ = 0;
+ GString* _tmp37_ = NULL;
+ gint _tmp38_ = 0;
+#line 190 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp33_ = c1;
+#line 190 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp34_ = g_ascii_xdigit_value (_tmp33_);
+#line 190 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp35_ = c2;
+#line 190 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp36_ = g_ascii_xdigit_value (_tmp35_);
+#line 190 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ ccode = (0x10 * _tmp34_) + _tmp36_;
+#line 191 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp37_ = builder;
+#line 191 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp38_ = ccode;
+#line 191 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_string_append_c (_tmp37_, (gchar) _tmp38_);
+#line 2182 "FSpotImporter.c"
+ }
+#line 193 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp39_ = cidx;
+#line 193 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ idx = _tmp39_ + 3;
+#line 2188 "FSpotImporter.c"
+ } else {
+ gint _tmp40_ = 0;
+#line 195 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp40_ = cidx;
+#line 195 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ idx = _tmp40_ + 1;
+#line 2195 "FSpotImporter.c"
+ }
+ } else {
+ GString* _tmp41_ = NULL;
+ const gchar* _tmp42_ = NULL;
+ gint _tmp43_ = 0;
+ gchar* _tmp44_ = NULL;
+ gchar* _tmp45_ = NULL;
+ const gchar* _tmp46_ = NULL;
+ gint _tmp47_ = 0;
+ gint _tmp48_ = 0;
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp41_ = builder;
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp42_ = url;
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp43_ = idx;
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp44_ = string_substring (_tmp42_, (glong) _tmp43_, (glong) -1);
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp45_ = _tmp44_;
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_string_append (_tmp41_, _tmp45_);
+#line 198 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp45_);
+#line 199 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp46_ = url;
+#line 199 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp47_ = strlen (_tmp46_);
+#line 199 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp48_ = _tmp47_;
+#line 199 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ idx = _tmp48_;
+#line 2228 "FSpotImporter.c"
+ }
+ }
+ }
+ }
+#line 202 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp49_ = builder;
+#line 202 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp50_ = _tmp49_->str;
+#line 202 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp51_ = g_strdup (_tmp50_);
+#line 202 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp51_;
+#line 202 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_string_free0 (builder);
+#line 202 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2245 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_item_class_init (DataImportsFSpotFSpotImportableItemClass * klass) {
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_item_parent_class = g_type_class_peek_parent (klass);
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotImportableItemPrivate));
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_importable_item_finalize;
+#line 2256 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_item_spit_data_imports_importable_media_item_interface_init (SpitDataImportsImportableMediaItemIface * iface) {
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_item_spit_data_imports_importable_media_item_parent_iface = g_type_interface_peek_parent (iface);
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_tags = (SpitDataImportsImportableTag** (*)(SpitDataImportsImportableMediaItem*, int*)) data_imports_fspot_fspot_importable_item_real_get_tags;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_event = (SpitDataImportsImportableEvent* (*)(SpitDataImportsImportableMediaItem*)) data_imports_fspot_fspot_importable_item_real_get_event;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_folder_path = (gchar* (*)(SpitDataImportsImportableMediaItem*)) data_imports_fspot_fspot_importable_item_real_get_folder_path;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_filename = (gchar* (*)(SpitDataImportsImportableMediaItem*)) data_imports_fspot_fspot_importable_item_real_get_filename;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_title = (gchar* (*)(SpitDataImportsImportableMediaItem*)) data_imports_fspot_fspot_importable_item_real_get_title;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_rating = (SpitDataImportsImportableRating* (*)(SpitDataImportsImportableMediaItem*)) data_imports_fspot_fspot_importable_item_real_get_rating;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_exposure_time = (time_t* (*)(SpitDataImportsImportableMediaItem*)) data_imports_fspot_fspot_importable_item_real_get_exposure_time;
+#line 2277 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_item_instance_init (DataImportsFSpotFSpotImportableItem * self) {
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_ITEM_GET_PRIVATE (self);
+#line 2284 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_item_finalize (GObject* obj) {
+ DataImportsFSpotFSpotImportableItem * self;
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_ITEM, DataImportsFSpotFSpotImportableItem);
+#line 91 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->photo_row);
+#line 92 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->photo_version_row);
+#line 93 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->roll_row);
+#line 94 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->tags = (_vala_array_free (self->priv->tags, self->priv->tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 95 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->event);
+#line 96 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->rating);
+#line 97 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->folder_path);
+#line 98 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->filename);
+#line 99 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (self->priv->date_time);
+#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_importable_item_parent_class)->finalize (obj);
+#line 2312 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_importable_item_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_importable_item_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_importable_item_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotImportableItemClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_importable_item_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotImportableItem), 0, (GInstanceInitFunc) data_imports_fspot_fspot_importable_item_instance_init, NULL };
+ static const GInterfaceInfo spit_data_imports_importable_media_item_info = { (GInterfaceInitFunc) data_imports_fspot_fspot_importable_item_spit_data_imports_importable_media_item_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType data_imports_fspot_fspot_importable_item_type_id;
+ data_imports_fspot_fspot_importable_item_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotImportableItem", &g_define_type_info, 0);
+ g_type_add_interface_static (data_imports_fspot_fspot_importable_item_type_id, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_MEDIA_ITEM, &spit_data_imports_importable_media_item_info);
+ g_once_init_leave (&data_imports_fspot_fspot_importable_item_type_id__volatile, data_imports_fspot_fspot_importable_item_type_id);
+ }
+ return data_imports_fspot_fspot_importable_item_type_id__volatile;
+}
+
+
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_importable_tag_construct (GType object_type, DataImportsFSpotDbFSpotTagRow* row, DataImportsFSpotFSpotImportableTag* parent) {
+ DataImportsFSpotFSpotImportableTag * self = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp1_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp2_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp3_ = NULL;
+#line 210 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAG_ROW (row), NULL);
+#line 210 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail ((parent == NULL) || DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (parent), NULL);
+#line 210 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotImportableTag*) g_object_new (object_type, NULL);
+#line 211 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = row;
+#line 211 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 211 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->row);
+#line 211 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->row = _tmp1_;
+#line 212 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = parent;
+#line 212 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _g_object_ref0 (_tmp2_);
+#line 212 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->parent);
+#line 212 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->parent = _tmp3_;
+#line 210 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 2360 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_importable_tag_new (DataImportsFSpotDbFSpotTagRow* row, DataImportsFSpotFSpotImportableTag* parent) {
+#line 210 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_importable_tag_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, row, parent);
+#line 2367 "FSpotImporter.c"
+}
+
+
+gint64 data_imports_fspot_fspot_importable_tag_get_id (DataImportsFSpotFSpotImportableTag* self) {
+ gint64 result = 0LL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ gint64 _tmp1_ = 0LL;
+#line 215 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (self), 0LL);
+#line 216 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->row;
+#line 216 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _tmp0_->tag_id;
+#line 216 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 216 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2385 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_tag_real_get_name (SpitDataImportsImportableTag* base) {
+ DataImportsFSpotFSpotImportableTag * self;
+ gchar* result = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ const gchar* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+#line 219 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTag);
+#line 220 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->row;
+#line 220 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _tmp0_->name;
+#line 220 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_strdup (_tmp1_);
+#line 220 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp2_;
+#line 220 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2407 "FSpotImporter.c"
+}
+
+
+static SpitDataImportsImportableTag* data_imports_fspot_fspot_importable_tag_real_get_parent (SpitDataImportsImportableTag* base) {
+ DataImportsFSpotFSpotImportableTag * self;
+ SpitDataImportsImportableTag* result = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp0_ = NULL;
+ SpitDataImportsImportableTag* _tmp1_ = NULL;
+#line 223 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTag);
+#line 224 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->parent;
+#line 224 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_TAG, SpitDataImportsImportableTag));
+#line 224 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 224 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2426 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_importable_tag_get_fspot_parent (DataImportsFSpotFSpotImportableTag* self) {
+ DataImportsFSpotFSpotImportableTag* result = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp0_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp1_ = NULL;
+#line 227 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (self), NULL);
+#line 228 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->parent;
+#line 228 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 228 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 228 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2444 "FSpotImporter.c"
+}
+
+
+gchar* data_imports_fspot_fspot_importable_tag_get_stock_icon (DataImportsFSpotFSpotImportableTag* self) {
+ gchar* result = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ const gchar* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+#line 231 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (self), NULL);
+#line 232 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->row;
+#line 232 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _tmp0_->stock_icon;
+#line 232 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_strdup (_tmp1_);
+#line 232 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp2_;
+#line 232 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2465 "FSpotImporter.c"
+}
+
+
+gboolean data_imports_fspot_fspot_importable_tag_is_stock (DataImportsFSpotFSpotImportableTag* self) {
+ gboolean result = FALSE;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ const gchar* _tmp1_ = NULL;
+ gboolean _tmp2_ = FALSE;
+#line 235 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (self), FALSE);
+#line 236 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->row;
+#line 236 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _tmp0_->stock_icon;
+#line 236 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_str_has_prefix (_tmp1_, DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_PREFIX_STOCK_ICON);
+#line 236 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp2_;
+#line 236 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2486 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableEvent* data_imports_fspot_fspot_importable_tag_to_event (DataImportsFSpotFSpotImportableTag* self) {
+ DataImportsFSpotFSpotImportableEvent* result = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ DataImportsFSpotFSpotImportableEvent* _tmp1_ = NULL;
+#line 239 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (self), NULL);
+#line 240 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->row;
+#line 240 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = data_imports_fspot_fspot_importable_event_new (_tmp0_);
+#line 240 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 240 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2504 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_tag_class_init (DataImportsFSpotFSpotImportableTagClass * klass) {
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_tag_parent_class = g_type_class_peek_parent (klass);
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotImportableTagPrivate));
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_importable_tag_finalize;
+#line 2515 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_tag_spit_data_imports_importable_tag_interface_init (SpitDataImportsImportableTagIface * iface) {
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_tag_spit_data_imports_importable_tag_parent_iface = g_type_interface_peek_parent (iface);
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_name = (gchar* (*)(SpitDataImportsImportableTag*)) data_imports_fspot_fspot_importable_tag_real_get_name;
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_parent = (SpitDataImportsImportableTag* (*)(SpitDataImportsImportableTag*)) data_imports_fspot_fspot_importable_tag_real_get_parent;
+#line 2526 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_tag_instance_init (DataImportsFSpotFSpotImportableTag * self) {
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_TAG_GET_PRIVATE (self);
+#line 2533 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_tag_finalize (GObject* obj) {
+ DataImportsFSpotFSpotImportableTag * self;
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, DataImportsFSpotFSpotImportableTag);
+#line 207 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->row);
+#line 208 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->parent);
+#line 206 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_importable_tag_parent_class)->finalize (obj);
+#line 2547 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_importable_tag_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_importable_tag_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_importable_tag_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotImportableTagClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_importable_tag_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotImportableTag), 0, (GInstanceInitFunc) data_imports_fspot_fspot_importable_tag_instance_init, NULL };
+ static const GInterfaceInfo spit_data_imports_importable_tag_info = { (GInterfaceInitFunc) data_imports_fspot_fspot_importable_tag_spit_data_imports_importable_tag_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType data_imports_fspot_fspot_importable_tag_type_id;
+ data_imports_fspot_fspot_importable_tag_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotImportableTag", &g_define_type_info, 0);
+ g_type_add_interface_static (data_imports_fspot_fspot_importable_tag_type_id, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_TAG, &spit_data_imports_importable_tag_info);
+ g_once_init_leave (&data_imports_fspot_fspot_importable_tag_type_id__volatile, data_imports_fspot_fspot_importable_tag_type_id);
+ }
+ return data_imports_fspot_fspot_importable_tag_type_id__volatile;
+}
+
+
+DataImportsFSpotFSpotImportableEvent* data_imports_fspot_fspot_importable_event_construct (GType object_type, DataImportsFSpotDbFSpotTagRow* row) {
+ DataImportsFSpotFSpotImportableEvent * self = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp1_ = NULL;
+#line 247 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAG_ROW (row), NULL);
+#line 247 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotImportableEvent*) g_object_new (object_type, NULL);
+#line 248 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = row;
+#line 248 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 248 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->row);
+#line 248 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->row = _tmp1_;
+#line 247 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 2583 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableEvent* data_imports_fspot_fspot_importable_event_new (DataImportsFSpotDbFSpotTagRow* row) {
+#line 247 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_importable_event_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, row);
+#line 2590 "FSpotImporter.c"
+}
+
+
+static gchar* data_imports_fspot_fspot_importable_event_real_get_name (SpitDataImportsImportableEvent* base) {
+ DataImportsFSpotFSpotImportableEvent * self;
+ gchar* result = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp0_ = NULL;
+ const gchar* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+#line 251 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, DataImportsFSpotFSpotImportableEvent);
+#line 252 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->row;
+#line 252 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _tmp0_->name;
+#line 252 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_strdup (_tmp1_);
+#line 252 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp2_;
+#line 252 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2612 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_event_class_init (DataImportsFSpotFSpotImportableEventClass * klass) {
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_event_parent_class = g_type_class_peek_parent (klass);
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotImportableEventPrivate));
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_importable_event_finalize;
+#line 2623 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_event_spit_data_imports_importable_event_interface_init (SpitDataImportsImportableEventIface * iface) {
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_event_spit_data_imports_importable_event_parent_iface = g_type_interface_peek_parent (iface);
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_name = (gchar* (*)(SpitDataImportsImportableEvent*)) data_imports_fspot_fspot_importable_event_real_get_name;
+#line 2632 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_event_instance_init (DataImportsFSpotFSpotImportableEvent * self) {
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_EVENT_GET_PRIVATE (self);
+#line 2639 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_event_finalize (GObject* obj) {
+ DataImportsFSpotFSpotImportableEvent * self;
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_EVENT, DataImportsFSpotFSpotImportableEvent);
+#line 245 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->row);
+#line 244 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_importable_event_parent_class)->finalize (obj);
+#line 2651 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_importable_event_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_importable_event_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_importable_event_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotImportableEventClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_importable_event_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotImportableEvent), 0, (GInstanceInitFunc) data_imports_fspot_fspot_importable_event_instance_init, NULL };
+ static const GInterfaceInfo spit_data_imports_importable_event_info = { (GInterfaceInitFunc) data_imports_fspot_fspot_importable_event_spit_data_imports_importable_event_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType data_imports_fspot_fspot_importable_event_type_id;
+ data_imports_fspot_fspot_importable_event_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotImportableEvent", &g_define_type_info, 0);
+ g_type_add_interface_static (data_imports_fspot_fspot_importable_event_type_id, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_EVENT, &spit_data_imports_importable_event_info);
+ g_once_init_leave (&data_imports_fspot_fspot_importable_event_type_id__volatile, data_imports_fspot_fspot_importable_event_type_id);
+ }
+ return data_imports_fspot_fspot_importable_event_type_id__volatile;
+}
+
+
+DataImportsFSpotFSpotImportableRating* data_imports_fspot_fspot_importable_rating_construct (GType object_type, gint rating_value) {
+ DataImportsFSpotFSpotImportableRating * self = NULL;
+ gint _tmp0_ = 0;
+ gint _tmp2_ = 0;
+#line 262 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotImportableRating*) g_object_new (object_type, NULL);
+#line 263 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = rating_value;
+#line 263 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp0_ < -1) {
+#line 264 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ rating_value = -1;
+#line 2681 "FSpotImporter.c"
+ } else {
+ gint _tmp1_ = 0;
+#line 265 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = rating_value;
+#line 265 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp1_ > 5) {
+#line 266 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ rating_value = 5;
+#line 2690 "FSpotImporter.c"
+ }
+ }
+#line 267 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = rating_value;
+#line 267 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->rating_value = _tmp2_;
+#line 262 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 2699 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableRating* data_imports_fspot_fspot_importable_rating_new (gint rating_value) {
+#line 262 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_importable_rating_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, rating_value);
+#line 2706 "FSpotImporter.c"
+}
+
+
+static gboolean data_imports_fspot_fspot_importable_rating_real_is_rejected (SpitDataImportsImportableRating* base) {
+ DataImportsFSpotFSpotImportableRating * self;
+ gboolean result = FALSE;
+ gint _tmp0_ = 0;
+#line 270 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRating);
+#line 271 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->rating_value;
+#line 271 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp0_ == DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_REJECTED;
+#line 271 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2722 "FSpotImporter.c"
+}
+
+
+static gboolean data_imports_fspot_fspot_importable_rating_real_is_unrated (SpitDataImportsImportableRating* base) {
+ DataImportsFSpotFSpotImportableRating * self;
+ gboolean result = FALSE;
+ gint _tmp0_ = 0;
+#line 274 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRating);
+#line 275 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->rating_value;
+#line 275 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp0_ == DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_UNRATED;
+#line 275 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2738 "FSpotImporter.c"
+}
+
+
+static gint data_imports_fspot_fspot_importable_rating_real_get_value (SpitDataImportsImportableRating* base) {
+ DataImportsFSpotFSpotImportableRating * self;
+ gint result = 0;
+ gint _tmp0_ = 0;
+#line 278 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRating);
+#line 279 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->rating_value;
+#line 279 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp0_;
+#line 279 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2754 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_rating_class_init (DataImportsFSpotFSpotImportableRatingClass * klass) {
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_rating_parent_class = g_type_class_peek_parent (klass);
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotImportableRatingPrivate));
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_importable_rating_finalize;
+#line 2765 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_rating_spit_data_imports_importable_rating_interface_init (SpitDataImportsImportableRatingIface * iface) {
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_importable_rating_spit_data_imports_importable_rating_parent_iface = g_type_interface_peek_parent (iface);
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->is_rejected = (gboolean (*)(SpitDataImportsImportableRating*)) data_imports_fspot_fspot_importable_rating_real_is_rejected;
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->is_unrated = (gboolean (*)(SpitDataImportsImportableRating*)) data_imports_fspot_fspot_importable_rating_real_is_unrated;
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_value = (gint (*)(SpitDataImportsImportableRating*)) data_imports_fspot_fspot_importable_rating_real_get_value;
+#line 2778 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_rating_instance_init (DataImportsFSpotFSpotImportableRating * self) {
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_IMPORTABLE_RATING_GET_PRIVATE (self);
+#line 2785 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_importable_rating_finalize (GObject* obj) {
+ DataImportsFSpotFSpotImportableRating * self;
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_RATING, DataImportsFSpotFSpotImportableRating);
+#line 256 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_importable_rating_parent_class)->finalize (obj);
+#line 2795 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_importable_rating_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_importable_rating_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_importable_rating_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotImportableRatingClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_importable_rating_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotImportableRating), 0, (GInstanceInitFunc) data_imports_fspot_fspot_importable_rating_instance_init, NULL };
+ static const GInterfaceInfo spit_data_imports_importable_rating_info = { (GInterfaceInitFunc) data_imports_fspot_fspot_importable_rating_spit_data_imports_importable_rating_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType data_imports_fspot_fspot_importable_rating_type_id;
+ data_imports_fspot_fspot_importable_rating_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotImportableRating", &g_define_type_info, 0);
+ g_type_add_interface_static (data_imports_fspot_fspot_importable_rating_type_id, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_RATING, &spit_data_imports_importable_rating_info);
+ g_once_init_leave (&data_imports_fspot_fspot_importable_rating_type_id__volatile, data_imports_fspot_fspot_importable_rating_type_id);
+ }
+ return data_imports_fspot_fspot_importable_rating_type_id__volatile;
+}
+
+
+static gpointer _importable_database_table_ref0 (gpointer self) {
+#line 288 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self ? importable_database_table_ref (self) : NULL;
+#line 2816 "FSpotImporter.c"
+}
+
+
+static gint64* _int64_dup (gint64* self) {
+ gint64* dup;
+#line 289 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ dup = g_new0 (gint64, 1);
+#line 289 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ memcpy (dup, self, sizeof (gint64));
+#line 289 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return dup;
+#line 2828 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotTagsCache* data_imports_fspot_fspot_tags_cache_construct (GType object_type, DataImportsFSpotDbFSpotTagsTable* tags_table, GError** error) {
+ DataImportsFSpotFSpotTagsCache * self = NULL;
+ DataImportsFSpotDbFSpotTagsTable* _tmp0_ = NULL;
+ DataImportsFSpotDbFSpotTagsTable* _tmp1_ = NULL;
+ GeeHashMap* _tmp2_ = NULL;
+#line 287 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAGS_TABLE (tags_table), NULL);
+#line 287 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotTagsCache*) g_object_new (object_type, NULL);
+#line 288 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = tags_table;
+#line 288 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _importable_database_table_ref0 (_tmp0_);
+#line 288 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _importable_database_table_unref0 (self->priv->tags_table);
+#line 288 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->tags_table = _tmp1_;
+#line 289 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = gee_hash_map_new (G_TYPE_INT64, (GBoxedCopyFunc) _int64_dup, g_free, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_TAG, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+#line 289 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->tags_map);
+#line 289 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->tags_map = _tmp2_;
+#line 287 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 2857 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotTagsCache* data_imports_fspot_fspot_tags_cache_new (DataImportsFSpotDbFSpotTagsTable* tags_table, GError** error) {
+#line 287 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_tags_cache_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE, tags_table, error);
+#line 2864 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_tags_cache_get_tag (DataImportsFSpotFSpotTagsCache* self, DataImportsFSpotDbFSpotTagRow* tag_row, GError** error) {
+ DataImportsFSpotFSpotImportableTag* result = NULL;
+ DataImportsFSpotFSpotImportableTag* tag = NULL;
+ GeeHashMap* _tmp0_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp1_ = NULL;
+ gint64 _tmp2_ = 0LL;
+ gpointer _tmp3_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp4_ = NULL;
+ GError * _inner_error_ = NULL;
+#line 292 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_TAGS_CACHE (self), NULL);
+#line 292 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TAG_ROW (tag_row), NULL);
+#line 293 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->tags_map;
+#line 293 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = tag_row;
+#line 293 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = _tmp1_->tag_id;
+#line 293 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), &_tmp2_);
+#line 293 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag = (DataImportsFSpotFSpotImportableTag*) _tmp3_;
+#line 294 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = tag;
+#line 294 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp4_ != NULL) {
+#line 295 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = tag;
+#line 295 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2899 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableTag* parent_tag = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp5_ = NULL;
+ gint64 _tmp6_ = 0LL;
+ DataImportsFSpotFSpotImportableTag* _tmp7_ = NULL;
+ DataImportsFSpotFSpotImportableTag* new_tag = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp8_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp9_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp10_ = NULL;
+ GeeHashMap* _tmp11_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp12_ = NULL;
+ gint64 _tmp13_ = 0LL;
+ DataImportsFSpotFSpotImportableTag* _tmp14_ = NULL;
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = tag_row;
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = _tmp5_->category_id;
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = data_imports_fspot_fspot_tags_cache_get_tag_from_id (self, _tmp6_, &_inner_error_);
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ parent_tag = _tmp7_;
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_propagate_error (error, _inner_error_);
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return NULL;
+#line 2931 "FSpotImporter.c"
+ } else {
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 297 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return NULL;
+#line 2941 "FSpotImporter.c"
+ }
+ }
+#line 298 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = tag_row;
+#line 298 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = parent_tag;
+#line 298 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp10_ = data_imports_fspot_fspot_importable_tag_new (_tmp8_, _tmp9_);
+#line 298 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ new_tag = _tmp10_;
+#line 299 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp11_ = self->priv->tags_map;
+#line 299 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp12_ = tag_row;
+#line 299 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp13_ = _tmp12_->tag_id;
+#line 299 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = new_tag;
+#line 299 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), &_tmp13_, _tmp14_);
+#line 300 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = new_tag;
+#line 300 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (parent_tag);
+#line 300 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 300 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 2970 "FSpotImporter.c"
+ }
+#line 292 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 2974 "FSpotImporter.c"
+}
+
+
+static DataImportsFSpotFSpotImportableTag* data_imports_fspot_fspot_tags_cache_get_tag_from_id (DataImportsFSpotFSpotTagsCache* self, gint64 tag_id, GError** error) {
+ DataImportsFSpotFSpotImportableTag* result = NULL;
+ gint64 _tmp0_ = 0LL;
+ DataImportsFSpotFSpotImportableTag* tag = NULL;
+ GeeHashMap* _tmp1_ = NULL;
+ gint64 _tmp2_ = 0LL;
+ gpointer _tmp3_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp4_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* tag_row = NULL;
+ DataImportsFSpotDbFSpotTagsTable* _tmp5_ = NULL;
+ gint64 _tmp6_ = 0LL;
+ DataImportsFSpotDbFSpotTagRow* _tmp7_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp8_ = NULL;
+ GError * _inner_error_ = NULL;
+#line 304 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_TAGS_CACHE (self), NULL);
+#line 306 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = tag_id;
+#line 306 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp0_ < ((gint64) 1)) {
+#line 307 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = NULL;
+#line 307 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 3002 "FSpotImporter.c"
+ }
+#line 308 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = self->priv->tags_map;
+#line 308 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = tag_id;
+#line 308 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), &_tmp2_);
+#line 308 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag = (DataImportsFSpotFSpotImportableTag*) _tmp3_;
+#line 309 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = tag;
+#line 309 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp4_ != NULL) {
+#line 310 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = tag;
+#line 310 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 3020 "FSpotImporter.c"
+ }
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = self->priv->tags_table;
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = tag_id;
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = data_imports_fspot_db_fspot_tags_table_get_by_id (_tmp5_, _tmp6_, &_inner_error_);
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag_row = _tmp7_;
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_propagate_error (error, _inner_error_);
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return NULL;
+#line 3040 "FSpotImporter.c"
+ } else {
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 311 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return NULL;
+#line 3050 "FSpotImporter.c"
+ }
+ }
+#line 312 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = tag_row;
+#line 312 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp8_ != NULL) {
+#line 3057 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableTag* parent_tag = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp9_ = NULL;
+ gint64 _tmp10_ = 0LL;
+ DataImportsFSpotFSpotImportableTag* _tmp11_ = NULL;
+ DataImportsFSpotFSpotImportableTag* new_tag = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp12_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp13_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp14_ = NULL;
+ GeeHashMap* _tmp15_ = NULL;
+ gint64 _tmp16_ = 0LL;
+ DataImportsFSpotFSpotImportableTag* _tmp17_ = NULL;
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = tag_row;
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp10_ = _tmp9_->category_id;
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp11_ = data_imports_fspot_fspot_tags_cache_get_tag_from_id (self, _tmp10_, &_inner_error_);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ parent_tag = _tmp11_;
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_propagate_error (error, _inner_error_);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return NULL;
+#line 3089 "FSpotImporter.c"
+ } else {
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 313 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return NULL;
+#line 3101 "FSpotImporter.c"
+ }
+ }
+#line 314 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp12_ = tag_row;
+#line 314 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp13_ = parent_tag;
+#line 314 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = data_imports_fspot_fspot_importable_tag_new (_tmp12_, _tmp13_);
+#line 314 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ new_tag = _tmp14_;
+#line 315 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp15_ = self->priv->tags_map;
+#line 315 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp16_ = tag_id;
+#line 315 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp17_ = new_tag;
+#line 315 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), &_tmp16_, _tmp17_);
+#line 316 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = new_tag;
+#line 316 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (parent_tag);
+#line 316 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 316 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 316 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 3130 "FSpotImporter.c"
+ }
+#line 318 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = NULL;
+#line 318 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 318 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 318 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 3140 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_tags_cache_class_init (DataImportsFSpotFSpotTagsCacheClass * klass) {
+#line 283 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_tags_cache_parent_class = g_type_class_peek_parent (klass);
+#line 283 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotTagsCachePrivate));
+#line 283 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_tags_cache_finalize;
+#line 3151 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_tags_cache_instance_init (DataImportsFSpotFSpotTagsCache * self) {
+#line 283 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_TAGS_CACHE_GET_PRIVATE (self);
+#line 3158 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_tags_cache_finalize (GObject* obj) {
+ DataImportsFSpotFSpotTagsCache * self;
+#line 283 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_TAGS_CACHE, DataImportsFSpotFSpotTagsCache);
+#line 284 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _importable_database_table_unref0 (self->priv->tags_table);
+#line 285 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (self->priv->tags_map);
+#line 283 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_tags_cache_parent_class)->finalize (obj);
+#line 3172 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_tags_cache_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_tags_cache_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_tags_cache_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotTagsCacheClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_tags_cache_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotTagsCache), 0, (GInstanceInitFunc) data_imports_fspot_fspot_tags_cache_instance_init, NULL };
+ GType data_imports_fspot_fspot_tags_cache_type_id;
+ data_imports_fspot_fspot_tags_cache_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotTagsCache", &g_define_type_info, 0);
+ g_once_init_leave (&data_imports_fspot_fspot_tags_cache_type_id__volatile, data_imports_fspot_fspot_tags_cache_type_id);
+ }
+ return data_imports_fspot_fspot_tags_cache_type_id__volatile;
+}
+
+
+DataImportsFSpotFSpotDataImporter* data_imports_fspot_fspot_data_importer_construct (GType object_type, SpitDataImportsService* service, SpitDataImportsPluginHost* host) {
+ DataImportsFSpotFSpotDataImporter * self = NULL;
+ SpitDataImportsService* _tmp0_ = NULL;
+ SpitDataImportsPluginHost* _tmp1_ = NULL;
+#line 328 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (SPIT_DATA_IMPORTS_IS_SERVICE (service), NULL);
+#line 328 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (SPIT_DATA_IMPORTS_IS_PLUGIN_HOST (host), NULL);
+#line 328 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = (DataImportsFSpotFSpotDataImporter*) g_object_new (object_type, NULL);
+#line 330 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:330: FSpotDataImporter instantiated.");
+#line 331 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = service;
+#line 331 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->service = _tmp0_;
+#line 332 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = host;
+#line 332 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->host = _tmp1_;
+#line 328 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return self;
+#line 3210 "FSpotImporter.c"
+}
+
+
+DataImportsFSpotFSpotDataImporter* data_imports_fspot_fspot_data_importer_new (SpitDataImportsService* service, SpitDataImportsPluginHost* host) {
+#line 328 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return data_imports_fspot_fspot_data_importer_construct (DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, service, host);
+#line 3217 "FSpotImporter.c"
+}
+
+
+static gboolean data_imports_fspot_fspot_data_importer_real_is_running (SpitDataImportsDataImporter* base) {
+ DataImportsFSpotFSpotDataImporter * self;
+ gboolean result = FALSE;
+ gboolean _tmp0_ = FALSE;
+#line 335 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 336 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->running;
+#line 336 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp0_;
+#line 336 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 3233 "FSpotImporter.c"
+}
+
+
+static SpitDataImportsService* data_imports_fspot_fspot_data_importer_real_get_service (SpitDataImportsDataImporter* base) {
+ DataImportsFSpotFSpotDataImporter * self;
+ SpitDataImportsService* result = NULL;
+ SpitDataImportsService* _tmp0_ = NULL;
+ SpitDataImportsService* _tmp1_ = NULL;
+#line 339 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 340 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->service;
+#line 340 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 340 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _tmp1_;
+#line 340 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 3252 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_real_start (SpitDataImportsDataImporter* base) {
+ DataImportsFSpotFSpotDataImporter * self;
+ gboolean _tmp0_ = FALSE;
+#line 343 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 344 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = spit_data_imports_data_importer_is_running (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_DATA_IMPORTS_TYPE_DATA_IMPORTER, SpitDataImportsDataImporter));
+#line 344 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp0_) {
+#line 345 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3267 "FSpotImporter.c"
+ }
+#line 347 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:347: FSpotDataImporter: starting interaction.");
+#line 349 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->running = TRUE;
+#line 351 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_data_importer_do_discover_importable_libraries (self);
+#line 3275 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_real_stop (SpitDataImportsDataImporter* base) {
+ DataImportsFSpotFSpotDataImporter * self;
+#line 354 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 355 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:355: FSpotDataImporter: stopping interaction.");
+#line 357 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->running = FALSE;
+#line 3287 "FSpotImporter.c"
+}
+
+
+/**
+ * Action that discovers importable libraries based on standard locations.
+ */
+static void _vala_array_add2 (SpitDataImportsImportableLibrary*** array, int* length, int* size, SpitDataImportsImportableLibrary* value) {
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if ((*length) == (*size)) {
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *size = (*size) ? (2 * (*size)) : 4;
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *array = g_renew (SpitDataImportsImportableLibrary*, *array, (*size) + 1);
+#line 3301 "FSpotImporter.c"
+ }
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[(*length)++] = value;
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[*length] = NULL;
+#line 3307 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_do_discover_importable_libraries (DataImportsFSpotFSpotDataImporter* self) {
+ SpitDataImportsImportableLibrary** discovered_libraries = NULL;
+ SpitDataImportsImportableLibrary** _tmp0_ = NULL;
+ gint discovered_libraries_length1 = 0;
+ gint _discovered_libraries_size_ = 0;
+ GFile** db_files = NULL;
+ const gchar* _tmp1_ = NULL;
+ GFile* _tmp2_ = NULL;
+ GFile* _tmp3_ = NULL;
+ GFile* _tmp4_ = NULL;
+ GFile* _tmp5_ = NULL;
+ GFile* _tmp6_ = NULL;
+ const gchar* _tmp7_ = NULL;
+ GFile* _tmp8_ = NULL;
+ GFile* _tmp9_ = NULL;
+ GFile* _tmp10_ = NULL;
+ GFile* _tmp11_ = NULL;
+ GFile* _tmp12_ = NULL;
+ GFile* _tmp13_ = NULL;
+ GFile* _tmp14_ = NULL;
+ const gchar* _tmp15_ = NULL;
+ GFile* _tmp16_ = NULL;
+ GFile* _tmp17_ = NULL;
+ GFile* _tmp18_ = NULL;
+ GFile* _tmp19_ = NULL;
+ GFile* _tmp20_ = NULL;
+ GFile** _tmp21_ = NULL;
+ GFile** _tmp22_ = NULL;
+ gint _tmp22__length1 = 0;
+ gint db_files_length1 = 0;
+ gint _db_files_size_ = 0;
+ GFile** _tmp23_ = NULL;
+ gint _tmp23__length1 = 0;
+ const gchar* _tmp33_ = NULL;
+ SpitDataImportsImportableLibrary** _tmp34_ = NULL;
+ gint _tmp34__length1 = 0;
+ SpitDataImportsPluginHost* _tmp35_ = NULL;
+ SpitDataImportsImportableLibrary** _tmp36_ = NULL;
+ gint _tmp36__length1 = 0;
+#line 365 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER (self));
+#line 366 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = g_new0 (SpitDataImportsImportableLibrary*, 0 + 1);
+#line 366 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ discovered_libraries = _tmp0_;
+#line 366 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ discovered_libraries_length1 = 0;
+#line 366 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _discovered_libraries_size_ = discovered_libraries_length1;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = g_get_user_config_dir ();
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_file_new_for_path (_tmp1_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _tmp2_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = g_file_get_child (_tmp3_, "f-spot");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _tmp4_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = g_file_get_child (_tmp5_, "photos.db");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = g_get_home_dir ();
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = g_file_new_for_path (_tmp7_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = _tmp8_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp10_ = g_file_get_child (_tmp9_, ".gnome2");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp11_ = _tmp10_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp12_ = g_file_get_child (_tmp11_, "f-spot");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp13_ = _tmp12_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = g_file_get_child (_tmp13_, "photos.db");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp15_ = g_get_user_data_dir ();
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp16_ = g_file_new_for_path (_tmp15_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp17_ = _tmp16_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp18_ = g_file_get_child (_tmp17_, "f-spot");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp19_ = _tmp18_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp20_ = g_file_get_child (_tmp19_, "photos.db");
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_ = g_new0 (GFile*, 3 + 1);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_[0] = _tmp6_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_[1] = _tmp14_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_[2] = _tmp20_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp22_ = _tmp21_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp22__length1 = 3;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp19_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp17_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp13_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp11_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp9_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp5_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp3_);
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ db_files = _tmp22_;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ db_files_length1 = _tmp22__length1;
+#line 369 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _db_files_size_ = db_files_length1;
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp23_ = db_files;
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp23__length1 = db_files_length1;
+#line 3436 "FSpotImporter.c"
+ {
+ GFile** db_file_collection = NULL;
+ gint db_file_collection_length1 = 0;
+ gint _db_file_collection_size_ = 0;
+ gint db_file_it = 0;
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ db_file_collection = _tmp23_;
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ db_file_collection_length1 = _tmp23__length1;
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ for (db_file_it = 0; db_file_it < _tmp23__length1; db_file_it = db_file_it + 1) {
+#line 3448 "FSpotImporter.c"
+ GFile* _tmp24_ = NULL;
+ GFile* db_file = NULL;
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp24_ = _g_object_ref0 (db_file_collection[db_file_it]);
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ db_file = _tmp24_;
+#line 3455 "FSpotImporter.c"
+ {
+ GFile* _tmp25_ = NULL;
+ gboolean _tmp26_ = FALSE;
+#line 382 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp25_ = db_file;
+#line 382 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp26_ = g_file_query_exists (_tmp25_, NULL);
+#line 382 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp26_) {
+#line 3465 "FSpotImporter.c"
+ SpitDataImportsImportableLibrary** _tmp27_ = NULL;
+ gint _tmp27__length1 = 0;
+ GFile* _tmp28_ = NULL;
+ DataImportsFSpotFSpotImportableLibrary* _tmp29_ = NULL;
+ GFile* _tmp30_ = NULL;
+ gchar* _tmp31_ = NULL;
+ gchar* _tmp32_ = NULL;
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp27_ = discovered_libraries;
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp27__length1 = discovered_libraries_length1;
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp28_ = db_file;
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp29_ = data_imports_fspot_fspot_importable_library_new (_tmp28_);
+#line 383 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _vala_array_add2 (&discovered_libraries, &discovered_libraries_length1, &_discovered_libraries_size_, G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_LIBRARY, SpitDataImportsImportableLibrary));
+#line 384 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp30_ = db_file;
+#line 384 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp31_ = g_file_get_path (_tmp30_);
+#line 384 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp32_ = _tmp31_;
+#line 384 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_message ("FSpotImporter.vala:384: Discovered importable library: %s", _tmp32_);
+#line 384 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp32_);
+#line 3493 "FSpotImporter.c"
+ }
+#line 381 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (db_file);
+#line 3497 "FSpotImporter.c"
+ }
+ }
+ }
+#line 389 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp34_ = discovered_libraries;
+#line 389 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp34__length1 = discovered_libraries_length1;
+#line 389 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp34__length1 > 0) {
+#line 389 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp33_ = DATA_IMPORTS_FSPOT_SERVICE_WELCOME_MESSAGE;
+#line 3509 "FSpotImporter.c"
+ } else {
+#line 389 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp33_ = DATA_IMPORTS_FSPOT_SERVICE_WELCOME_MESSAGE_FILE_ONLY;
+#line 3513 "FSpotImporter.c"
+ }
+#line 388 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp35_ = self->priv->host;
+#line 388 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp36_ = discovered_libraries;
+#line 388 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp36__length1 = discovered_libraries_length1;
+#line 388 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_install_library_selection_pane (_tmp35_, _tmp33_, _tmp36_, _tmp36__length1, DATA_IMPORTS_FSPOT_FILE_IMPORT_LABEL);
+#line 365 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ db_files = (_vala_array_free (db_files, db_files_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 365 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ discovered_libraries = (_vala_array_free (discovered_libraries, discovered_libraries_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 3527 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_real_on_library_selected (SpitDataImportsDataImporter* base, SpitDataImportsImportableLibrary* library) {
+ DataImportsFSpotFSpotDataImporter * self;
+ SpitDataImportsImportableLibrary* _tmp0_ = NULL;
+ GFile* _tmp1_ = NULL;
+ GFile* _tmp2_ = NULL;
+#line 395 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 395 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_if_fail (SPIT_DATA_IMPORTS_IS_IMPORTABLE_LIBRARY (library));
+#line 396 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = library;
+#line 396 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = data_imports_fspot_fspot_importable_library_get_db_file (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, DATA_IMPORTS_FSPOT_TYPE_FSPOT_IMPORTABLE_LIBRARY, DataImportsFSpotFSpotImportableLibrary));
+#line 396 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = _tmp1_;
+#line 396 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_data_importer_on_file_selected (G_TYPE_CHECK_INSTANCE_CAST (self, SPIT_DATA_IMPORTS_TYPE_DATA_IMPORTER, SpitDataImportsDataImporter), _tmp2_);
+#line 396 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp2_);
+#line 3550 "FSpotImporter.c"
+}
+
+
+static void _vala_array_add3 (DataImportsFSpotFSpotImportableTag*** array, int* length, int* size, DataImportsFSpotFSpotImportableTag* value) {
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if ((*length) == (*size)) {
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *size = (*size) ? (2 * (*size)) : 4;
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *array = g_renew (DataImportsFSpotFSpotImportableTag*, *array, (*size) + 1);
+#line 3561 "FSpotImporter.c"
+ }
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[(*length)++] = value;
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[*length] = NULL;
+#line 3567 "FSpotImporter.c"
+}
+
+
+static void _vala_array_add4 (SpitDataImportsImportableMediaItem*** array, int* length, int* size, SpitDataImportsImportableMediaItem* value) {
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if ((*length) == (*size)) {
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *size = (*size) ? (2 * (*size)) : 4;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *array = g_renew (SpitDataImportsImportableMediaItem*, *array, (*size) + 1);
+#line 3578 "FSpotImporter.c"
+ }
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[(*length)++] = value;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[*length] = NULL;
+#line 3584 "FSpotImporter.c"
+}
+
+
+static void _vala_array_add5 (SpitDataImportsImportableMediaItem*** array, int* length, int* size, SpitDataImportsImportableMediaItem* value) {
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if ((*length) == (*size)) {
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *size = (*size) ? (2 * (*size)) : 4;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *array = g_renew (SpitDataImportsImportableMediaItem*, *array, (*size) + 1);
+#line 3595 "FSpotImporter.c"
+ }
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[(*length)++] = value;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[*length] = NULL;
+#line 3601 "FSpotImporter.c"
+}
+
+
+static void _vala_array_add6 (SpitDataImportsImportableMediaItem*** array, int* length, int* size, SpitDataImportsImportableMediaItem* value) {
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if ((*length) == (*size)) {
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *size = (*size) ? (2 * (*size)) : 4;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ *array = g_renew (SpitDataImportsImportableMediaItem*, *array, (*size) + 1);
+#line 3612 "FSpotImporter.c"
+ }
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[(*length)++] = value;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ (*array)[*length] = NULL;
+#line 3618 "FSpotImporter.c"
+}
+
+
+static void _data_imports_fspot_fspot_data_importer_on_imported_items_count_spit_data_imports_imported_items_count_callback (gint imported_items_count, gpointer self) {
+#line 527 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_data_importer_on_imported_items_count ((DataImportsFSpotFSpotDataImporter*) self, imported_items_count);
+#line 3625 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_real_on_file_selected (SpitDataImportsDataImporter* base, GFile* file) {
+ DataImportsFSpotFSpotDataImporter * self;
+ DataImportsFSpotDbFSpotDatabase* database = NULL;
+ DataImportsFSpotFSpotTagsCache* tags_cache = NULL;
+ GeeArrayList* all_photos = NULL;
+ gdouble progress_delta_per_photo = 0.0;
+ gdouble progress_plugin_to_host_ratio = 0.0;
+ gdouble current_progress = 0.0;
+ SpitDataImportsPluginHost* _tmp24_ = NULL;
+ const gchar* _tmp25_ = NULL;
+ GeeArrayList* _tmp36_ = NULL;
+ gint _tmp37_ = 0;
+ gint _tmp38_ = 0;
+ SpitDataImportsPluginHost* _tmp173_ = NULL;
+ GError * _inner_error_ = NULL;
+#line 399 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 399 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_if_fail (G_IS_FILE (file));
+#line 403 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ progress_delta_per_photo = 1.0;
+#line 404 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ progress_plugin_to_host_ratio = 0.5;
+#line 405 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ current_progress = 0.0;
+#line 3654 "FSpotImporter.c"
+ {
+ DataImportsFSpotDbFSpotDatabase* _tmp0_ = NULL;
+ GFile* _tmp1_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp2_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp3_ = NULL;
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = file;
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = data_imports_fspot_db_fspot_database_new (_tmp1_, &_inner_error_);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = _tmp2_;
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 3670 "FSpotImporter.c"
+ goto __catch0_database_error;
+ }
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == SPIT_DATA_IMPORTS_DATA_IMPORT_ERROR) {
+#line 3675 "FSpotImporter.c"
+ goto __catch0_spit_data_imports_data_import_error;
+ }
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3690 "FSpotImporter.c"
+ }
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _tmp0_;
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = NULL;
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 407 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ database = _tmp3_;
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp0_);
+#line 3702 "FSpotImporter.c"
+ }
+ goto __finally0;
+ __catch0_database_error:
+ {
+ GError* e = NULL;
+ GError* _tmp4_ = NULL;
+ const gchar* _tmp5_ = NULL;
+ gchar* _tmp6_ = NULL;
+ gchar* _tmp7_ = NULL;
+ SpitDataImportsPluginHost* _tmp8_ = NULL;
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 409 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = e;
+#line 409 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = _tmp4_->message;
+#line 409 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = g_strdup_printf ("FSpotDataImporter: Can't open database file: %s", _tmp5_);
+#line 409 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = _tmp6_;
+#line 409 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:409: %s", _tmp7_);
+#line 409 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp7_);
+#line 410 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = self->priv->host;
+#line 410 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_post_error_message (_tmp8_, DATA_IMPORTS_FSPOT_ERROR_CANT_OPEN_DB_FILE);
+#line 411 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 411 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 411 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 411 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 411 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3743 "FSpotImporter.c"
+ }
+ goto __finally0;
+ __catch0_spit_data_imports_data_import_error:
+ {
+ GError* e = NULL;
+ GError* _tmp9_ = NULL;
+ const gchar* _tmp10_ = NULL;
+ gchar* _tmp11_ = NULL;
+ gchar* _tmp12_ = NULL;
+ SpitDataImportsPluginHost* _tmp13_ = NULL;
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 413 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = e;
+#line 413 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp10_ = _tmp9_->message;
+#line 413 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp11_ = g_strdup_printf ("FSpotDataImporter: Unsupported F-Spot database version: %s", _tmp10_);
+#line 413 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp12_ = _tmp11_;
+#line 413 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:413: %s", _tmp12_);
+#line 413 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp12_);
+#line 414 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp13_ = self->priv->host;
+#line 414 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_post_error_message (_tmp13_, DATA_IMPORTS_FSPOT_ERROR_UNSUPPORTED_DB_VERSION);
+#line 415 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 415 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 415 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 415 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 415 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3784 "FSpotImporter.c"
+ }
+ __finally0:
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 406 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3801 "FSpotImporter.c"
+ }
+ {
+ DataImportsFSpotFSpotTagsCache* _tmp14_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp15_ = NULL;
+ DataImportsFSpotDbFSpotTagsTable* _tmp16_ = NULL;
+ DataImportsFSpotFSpotTagsCache* _tmp17_ = NULL;
+ DataImportsFSpotFSpotTagsCache* _tmp18_ = NULL;
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp15_ = database;
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp16_ = _tmp15_->tags_table;
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp17_ = data_imports_fspot_fspot_tags_cache_new (_tmp16_, &_inner_error_);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = _tmp17_;
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 3821 "FSpotImporter.c"
+ goto __catch1_database_error;
+ }
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3836 "FSpotImporter.c"
+ }
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp18_ = _tmp14_;
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp14_ = NULL;
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 418 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags_cache = _tmp18_;
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp14_);
+#line 3848 "FSpotImporter.c"
+ }
+ goto __finally1;
+ __catch1_database_error:
+ {
+ GError* e = NULL;
+ GError* _tmp19_ = NULL;
+ const gchar* _tmp20_ = NULL;
+ gchar* _tmp21_ = NULL;
+ gchar* _tmp22_ = NULL;
+ SpitDataImportsPluginHost* _tmp23_ = NULL;
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 420 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp19_ = e;
+#line 420 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp20_ = _tmp19_->message;
+#line 420 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp21_ = g_strdup_printf ("FSpotDataImporter: Can't read tags table: %s", _tmp20_);
+#line 420 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp22_ = _tmp21_;
+#line 420 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:420: %s", _tmp22_);
+#line 420 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp22_);
+#line 421 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp23_ = self->priv->host;
+#line 421 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_post_error_message (_tmp23_, DATA_IMPORTS_FSPOT_ERROR_CANT_READ_TAGS_TABLE);
+#line 422 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 422 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 422 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 422 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 422 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3889 "FSpotImporter.c"
+ }
+ __finally1:
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 417 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3906 "FSpotImporter.c"
+ }
+#line 424 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp24_ = self->priv->host;
+#line 424 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp25_ = _ ("Preparing to import");
+#line 424 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_install_import_progress_pane (_tmp24_, _tmp25_);
+#line 3914 "FSpotImporter.c"
+ {
+ GeeArrayList* _tmp26_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp27_ = NULL;
+ DataImportsFSpotDbFSpotPhotosTable* _tmp28_ = NULL;
+ GeeArrayList* _tmp29_ = NULL;
+ GeeArrayList* _tmp30_ = NULL;
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp27_ = database;
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp28_ = _tmp27_->photos_table;
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp29_ = data_imports_fspot_db_fspot_photos_table_get_all (_tmp28_, &_inner_error_);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp26_ = _tmp29_;
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 3933 "FSpotImporter.c"
+ goto __catch2_database_error;
+ }
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 3948 "FSpotImporter.c"
+ }
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp30_ = _tmp26_;
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp26_ = NULL;
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 426 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ all_photos = _tmp30_;
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp26_);
+#line 3960 "FSpotImporter.c"
+ }
+ goto __finally2;
+ __catch2_database_error:
+ {
+ GError* e = NULL;
+ GError* _tmp31_ = NULL;
+ const gchar* _tmp32_ = NULL;
+ gchar* _tmp33_ = NULL;
+ gchar* _tmp34_ = NULL;
+ SpitDataImportsPluginHost* _tmp35_ = NULL;
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 428 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp31_ = e;
+#line 428 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp32_ = _tmp31_->message;
+#line 428 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp33_ = g_strdup_printf ("FSpotDataImporter: Can't read photos table: %s", _tmp32_);
+#line 428 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp34_ = _tmp33_;
+#line 428 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_debug ("FSpotImporter.vala:428: %s", _tmp34_);
+#line 428 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp34_);
+#line 429 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp35_ = self->priv->host;
+#line 429 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_post_error_message (_tmp35_, DATA_IMPORTS_FSPOT_ERROR_CANT_READ_PHOTOS_TABLE);
+#line 430 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 430 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 430 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 430 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 430 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4001 "FSpotImporter.c"
+ }
+ __finally2:
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 425 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4018 "FSpotImporter.c"
+ }
+#line 432 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp36_ = all_photos;
+#line 432 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp37_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp36_, GEE_TYPE_COLLECTION, GeeCollection));
+#line 432 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp38_ = _tmp37_;
+#line 432 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp38_ > 0) {
+#line 4028 "FSpotImporter.c"
+ GeeArrayList* _tmp39_ = NULL;
+ gint _tmp40_ = 0;
+ gint _tmp41_ = 0;
+#line 433 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp39_ = all_photos;
+#line 433 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp40_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp39_, GEE_TYPE_COLLECTION, GeeCollection));
+#line 433 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp41_ = _tmp40_;
+#line 433 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ progress_delta_per_photo = 1.0 / _tmp41_;
+#line 4040 "FSpotImporter.c"
+ }
+ {
+ GeeArrayList* _photo_row_list = NULL;
+ GeeArrayList* _tmp42_ = NULL;
+ GeeArrayList* _tmp43_ = NULL;
+ gint _photo_row_size = 0;
+ GeeArrayList* _tmp44_ = NULL;
+ gint _tmp45_ = 0;
+ gint _tmp46_ = 0;
+ gint _photo_row_index = 0;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp42_ = all_photos;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp43_ = _g_object_ref0 (_tmp42_);
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_row_list = _tmp43_;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp44_ = _photo_row_list;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp45_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp44_, GEE_TYPE_COLLECTION, GeeCollection));
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp46_ = _tmp45_;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_row_size = _tmp46_;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_row_index = -1;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ while (TRUE) {
+#line 4069 "FSpotImporter.c"
+ gint _tmp47_ = 0;
+ gint _tmp48_ = 0;
+ gint _tmp49_ = 0;
+ DataImportsFSpotDbFSpotPhotoRow* photo_row = NULL;
+ GeeArrayList* _tmp50_ = NULL;
+ gint _tmp51_ = 0;
+ gpointer _tmp52_ = NULL;
+ gboolean hidden = FALSE;
+ gboolean favorite = FALSE;
+ DataImportsFSpotFSpotImportableTag** tags = NULL;
+ DataImportsFSpotFSpotImportableTag** _tmp53_ = NULL;
+ gint tags_length1 = 0;
+ gint _tags_size_ = 0;
+ DataImportsFSpotFSpotImportableEvent* event = NULL;
+ DataImportsFSpotDbFSpotRollRow* roll_row = NULL;
+ SpitDataImportsImportableMediaItem** importable_items = NULL;
+ SpitDataImportsImportableMediaItem** _tmp97_ = NULL;
+ gint importable_items_length1 = 0;
+ gint _importable_items_size_ = 0;
+ gboolean _tmp161_ = FALSE;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp47_ = _photo_row_index;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_row_index = _tmp47_ + 1;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp48_ = _photo_row_index;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp49_ = _photo_row_size;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!(_tmp48_ < _tmp49_)) {
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ break;
+#line 4102 "FSpotImporter.c"
+ }
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp50_ = _photo_row_list;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp51_ = _photo_row_index;
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp52_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp50_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp51_);
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_row = (DataImportsFSpotDbFSpotPhotoRow*) _tmp52_;
+#line 435 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ hidden = FALSE;
+#line 436 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ favorite = FALSE;
+#line 437 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp53_ = g_new0 (DataImportsFSpotFSpotImportableTag*, 0 + 1);
+#line 437 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = _tmp53_;
+#line 437 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags_length1 = 0;
+#line 437 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tags_size_ = tags_length1;
+#line 438 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ event = NULL;
+#line 439 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ roll_row = NULL;
+#line 4128 "FSpotImporter.c"
+ {
+ GeeArrayList* _tmp54_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp55_ = NULL;
+ DataImportsFSpotDbFSpotTagsTable* _tmp56_ = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp57_ = NULL;
+ gint64 _tmp58_ = 0LL;
+ GeeArrayList* _tmp59_ = NULL;
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp55_ = database;
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp56_ = _tmp55_->tags_table;
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp57_ = photo_row;
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp58_ = _tmp57_->photo_id;
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp59_ = data_imports_fspot_db_fspot_tags_table_get_by_photo_id (_tmp56_, _tmp58_, &_inner_error_);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp54_ = _tmp59_;
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 4152 "FSpotImporter.c"
+ goto __catch3_database_error;
+ }
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 449 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4177 "FSpotImporter.c"
+ }
+ {
+ GeeArrayList* _tag_row_list = NULL;
+ GeeArrayList* _tmp60_ = NULL;
+ gint _tag_row_size = 0;
+ GeeArrayList* _tmp61_ = NULL;
+ gint _tmp62_ = 0;
+ gint _tmp63_ = 0;
+ gint _tag_row_index = 0;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp60_ = _tmp54_;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp54_ = NULL;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tag_row_list = _tmp60_;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp61_ = _tag_row_list;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp62_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp61_, GEE_TYPE_COLLECTION, GeeCollection));
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp63_ = _tmp62_;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tag_row_size = _tmp63_;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tag_row_index = -1;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ while (TRUE) {
+#line 4205 "FSpotImporter.c"
+ gint _tmp64_ = 0;
+ gint _tmp65_ = 0;
+ gint _tmp66_ = 0;
+ DataImportsFSpotDbFSpotTagRow* tag_row = NULL;
+ GeeArrayList* _tmp67_ = NULL;
+ gint _tmp68_ = 0;
+ gpointer _tmp69_ = NULL;
+ DataImportsFSpotFSpotImportableTag* tag = NULL;
+ DataImportsFSpotFSpotTagsCache* _tmp70_ = NULL;
+ DataImportsFSpotDbFSpotTagRow* _tmp71_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp72_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp73_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp74_ = NULL;
+ gint64 _tmp75_ = 0LL;
+ gboolean _tmp76_ = FALSE;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp64_ = _tag_row_index;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tag_row_index = _tmp64_ + 1;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp65_ = _tag_row_index;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp66_ = _tag_row_size;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!(_tmp65_ < _tmp66_)) {
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ break;
+#line 4233 "FSpotImporter.c"
+ }
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp67_ = _tag_row_list;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp68_ = _tag_row_index;
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp69_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp67_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp68_);
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag_row = (DataImportsFSpotDbFSpotTagRow*) _tmp69_;
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp70_ = tags_cache;
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp71_ = tag_row;
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp72_ = data_imports_fspot_fspot_tags_cache_get_tag (_tmp70_, _tmp71_, &_inner_error_);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tag = _tmp72_;
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tag_row_list);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp54_);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 4261 "FSpotImporter.c"
+ goto __catch3_database_error;
+ }
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tag_row_list);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp54_);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 451 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4292 "FSpotImporter.c"
+ }
+#line 452 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp73_ = tag;
+#line 452 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp74_ = database;
+#line 452 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp75_ = _tmp74_->hidden_tag_id;
+#line 452 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp76_ = data_imports_fspot_fspot_data_importer_is_tag_hidden (self, _tmp73_, _tmp75_);
+#line 452 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp76_) {
+#line 453 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ hidden = TRUE;
+#line 4306 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableTag* _tmp77_ = NULL;
+ gboolean _tmp78_ = FALSE;
+#line 454 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp77_ = tag;
+#line 454 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp78_ = data_imports_fspot_fspot_data_importer_is_tag_favorite (self, _tmp77_);
+#line 454 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp78_) {
+#line 455 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ favorite = TRUE;
+#line 4318 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableTag** _tmp79_ = NULL;
+ gint _tmp79__length1 = 0;
+ DataImportsFSpotFSpotImportableTag* _tmp80_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp81_ = NULL;
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp79_ = tags;
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp79__length1 = tags_length1;
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp80_ = tag;
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp81_ = _g_object_ref0 (_tmp80_);
+#line 457 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _vala_array_add3 (&tags, &tags_length1, &_tags_size_, _tmp81_);
+#line 4334 "FSpotImporter.c"
+ }
+ }
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag);
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tag_row);
+#line 4341 "FSpotImporter.c"
+ }
+#line 447 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tag_row_list);
+#line 4345 "FSpotImporter.c"
+ }
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp54_);
+#line 4349 "FSpotImporter.c"
+ }
+ goto __finally3;
+ __catch3_database_error:
+ {
+ GError* e = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp82_ = NULL;
+ gint64 _tmp83_ = 0LL;
+ GError* _tmp84_ = NULL;
+ const gchar* _tmp85_ = NULL;
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 461 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp82_ = photo_row;
+#line 461 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp83_ = _tmp82_->photo_id;
+#line 461 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp84_ = e;
+#line 461 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp85_ = _tmp84_->message;
+#line 461 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_message ("FSpotImporter.vala:461: Failed to retrieve tags for photo ID %ld: %s", (glong) _tmp83_, _tmp85_);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 4375 "FSpotImporter.c"
+ }
+ __finally3:
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 446 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4402 "FSpotImporter.c"
+ }
+ {
+ DataImportsFSpotDbFSpotRollRow* _tmp86_ = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp87_ = NULL;
+ DataImportsFSpotDbFSpotRollsTable* _tmp88_ = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp89_ = NULL;
+ gint64 _tmp90_ = 0LL;
+ DataImportsFSpotDbFSpotRollRow* _tmp91_ = NULL;
+ DataImportsFSpotDbFSpotRollRow* _tmp92_ = NULL;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp87_ = database;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp88_ = _tmp87_->rolls_table;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp89_ = photo_row;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp90_ = _tmp89_->roll_id;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp91_ = data_imports_fspot_db_fspot_rolls_table_get_by_id (_tmp88_, _tmp90_, &_inner_error_);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp86_ = _tmp91_;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 4428 "FSpotImporter.c"
+ goto __catch4_database_error;
+ }
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4453 "FSpotImporter.c"
+ }
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp92_ = _tmp86_;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp86_ = NULL;
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 466 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ roll_row = _tmp92_;
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_tmp86_);
+#line 4465 "FSpotImporter.c"
+ }
+ goto __finally4;
+ __catch4_database_error:
+ {
+ GError* e = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp93_ = NULL;
+ gint64 _tmp94_ = 0LL;
+ GError* _tmp95_ = NULL;
+ const gchar* _tmp96_ = NULL;
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 469 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp93_ = photo_row;
+#line 469 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp94_ = _tmp93_->photo_id;
+#line 469 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp95_ = e;
+#line 469 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp96_ = _tmp95_->message;
+#line 469 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_message ("FSpotImporter.vala:469: Failed to retrieve roll for photo ID %ld: %s", (glong) _tmp94_, _tmp96_);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 4491 "FSpotImporter.c"
+ }
+ __finally4:
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 465 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4518 "FSpotImporter.c"
+ }
+#line 473 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp97_ = g_new0 (SpitDataImportsImportableMediaItem*, 0 + 1);
+#line 473 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_items = _tmp97_;
+#line 473 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_items_length1 = 0;
+#line 473 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _importable_items_size_ = importable_items_length1;
+#line 4528 "FSpotImporter.c"
+ {
+ GeeArrayList* photo_versions = NULL;
+ DataImportsFSpotDbFSpotDatabase* _tmp98_ = NULL;
+ DataImportsFSpotDbFSpotPhotoVersionsTable* _tmp99_ = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp100_ = NULL;
+ gint64 _tmp101_ = 0LL;
+ GeeArrayList* _tmp102_ = NULL;
+ gboolean photo_versions_added = FALSE;
+ gboolean photo_versions_skipped = FALSE;
+ gboolean _tmp128_ = FALSE;
+ gboolean _tmp129_ = FALSE;
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp98_ = database;
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp99_ = _tmp98_->photo_versions_table;
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp100_ = photo_row;
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp101_ = _tmp100_->photo_id;
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp102_ = data_imports_fspot_db_fspot_photo_versions_table_get_by_photo_id (_tmp99_, _tmp101_, &_inner_error_);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_versions = _tmp102_;
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_inner_error_->domain == DATABASE_ERROR) {
+#line 4556 "FSpotImporter.c"
+ goto __catch5_database_error;
+ }
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_items = (_vala_array_free (importable_items, importable_items_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 475 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4583 "FSpotImporter.c"
+ }
+#line 477 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_versions_added = FALSE;
+#line 478 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_versions_skipped = FALSE;
+#line 4589 "FSpotImporter.c"
+ {
+ GeeArrayList* _photo_version_row_list = NULL;
+ GeeArrayList* _tmp103_ = NULL;
+ GeeArrayList* _tmp104_ = NULL;
+ gint _photo_version_row_size = 0;
+ GeeArrayList* _tmp105_ = NULL;
+ gint _tmp106_ = 0;
+ gint _tmp107_ = 0;
+ gint _photo_version_row_index = 0;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp103_ = photo_versions;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp104_ = _g_object_ref0 (_tmp103_);
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_version_row_list = _tmp104_;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp105_ = _photo_version_row_list;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp106_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp105_, GEE_TYPE_COLLECTION, GeeCollection));
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp107_ = _tmp106_;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_version_row_size = _tmp107_;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_version_row_index = -1;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ while (TRUE) {
+#line 4617 "FSpotImporter.c"
+ gint _tmp108_ = 0;
+ gint _tmp109_ = 0;
+ gint _tmp110_ = 0;
+ DataImportsFSpotDbFSpotPhotoVersionRow* photo_version_row = NULL;
+ GeeArrayList* _tmp111_ = NULL;
+ gint _tmp112_ = 0;
+ gpointer _tmp113_ = NULL;
+ gboolean _tmp114_ = FALSE;
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp115_ = NULL;
+ GFile* _tmp116_ = NULL;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp108_ = _photo_version_row_index;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _photo_version_row_index = _tmp108_ + 1;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp109_ = _photo_version_row_index;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp110_ = _photo_version_row_size;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!(_tmp109_ < _tmp110_)) {
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ break;
+#line 4640 "FSpotImporter.c"
+ }
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp111_ = _photo_version_row_list;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp112_ = _photo_version_row_index;
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp113_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp111_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp112_);
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_version_row = (DataImportsFSpotDbFSpotPhotoVersionRow*) _tmp113_;
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp115_ = photo_version_row;
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp116_ = _tmp115_->base_path;
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp116_ != NULL) {
+#line 4656 "FSpotImporter.c"
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp117_ = NULL;
+ const gchar* _tmp118_ = NULL;
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp117_ = photo_version_row;
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp118_ = _tmp117_->filename;
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp114_ = _tmp118_ != NULL;
+#line 4665 "FSpotImporter.c"
+ } else {
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp114_ = FALSE;
+#line 4669 "FSpotImporter.c"
+ }
+#line 480 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp114_) {
+#line 4673 "FSpotImporter.c"
+ SpitDataImportsImportableMediaItem** _tmp119_ = NULL;
+ gint _tmp119__length1 = 0;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp120_ = NULL;
+ DataImportsFSpotDbFSpotPhotoVersionRow* _tmp121_ = NULL;
+ DataImportsFSpotDbFSpotRollRow* _tmp122_ = NULL;
+ DataImportsFSpotFSpotImportableTag** _tmp123_ = NULL;
+ gint _tmp123__length1 = 0;
+ DataImportsFSpotFSpotImportableEvent* _tmp124_ = NULL;
+ gboolean _tmp125_ = FALSE;
+ gboolean _tmp126_ = FALSE;
+ DataImportsFSpotFSpotImportableItem* _tmp127_ = NULL;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp119_ = importable_items;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp119__length1 = importable_items_length1;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp120_ = photo_row;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp121_ = photo_version_row;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp122_ = roll_row;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp123_ = tags;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp123__length1 = tags_length1;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp124_ = event;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp125_ = hidden;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp126_ = favorite;
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp127_ = data_imports_fspot_fspot_importable_item_new (_tmp120_, _tmp121_, _tmp122_, _tmp123_, _tmp123__length1, _tmp124_, _tmp125_, _tmp126_);
+#line 481 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _vala_array_add4 (&importable_items, &importable_items_length1, &_importable_items_size_, G_TYPE_CHECK_INSTANCE_CAST (_tmp127_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_MEDIA_ITEM, SpitDataImportsImportableMediaItem));
+#line 484 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_versions_added = TRUE;
+#line 4711 "FSpotImporter.c"
+ } else {
+#line 486 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ photo_versions_skipped = TRUE;
+#line 4715 "FSpotImporter.c"
+ }
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_version_row);
+#line 4719 "FSpotImporter.c"
+ }
+#line 479 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_version_row_list);
+#line 4723 "FSpotImporter.c"
+ }
+#line 494 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp129_ = photo_versions_skipped;
+#line 494 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp129_) {
+#line 494 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp128_ = TRUE;
+#line 4731 "FSpotImporter.c"
+ } else {
+ gboolean _tmp130_ = FALSE;
+#line 494 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp130_ = photo_versions_added;
+#line 494 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp128_ = !_tmp130_;
+#line 4738 "FSpotImporter.c"
+ }
+#line 494 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp128_) {
+#line 4742 "FSpotImporter.c"
+ gboolean _tmp131_ = FALSE;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp132_ = NULL;
+ GFile* _tmp133_ = NULL;
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp132_ = photo_row;
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp133_ = _tmp132_->base_path;
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp133_ != NULL) {
+#line 4752 "FSpotImporter.c"
+ DataImportsFSpotDbFSpotPhotoRow* _tmp134_ = NULL;
+ const gchar* _tmp135_ = NULL;
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp134_ = photo_row;
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp135_ = _tmp134_->filename;
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp131_ = _tmp135_ != NULL;
+#line 4761 "FSpotImporter.c"
+ } else {
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp131_ = FALSE;
+#line 4765 "FSpotImporter.c"
+ }
+#line 495 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp131_) {
+#line 4769 "FSpotImporter.c"
+ SpitDataImportsImportableMediaItem** _tmp136_ = NULL;
+ gint _tmp136__length1 = 0;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp137_ = NULL;
+ DataImportsFSpotDbFSpotRollRow* _tmp138_ = NULL;
+ DataImportsFSpotFSpotImportableTag** _tmp139_ = NULL;
+ gint _tmp139__length1 = 0;
+ DataImportsFSpotFSpotImportableEvent* _tmp140_ = NULL;
+ gboolean _tmp141_ = FALSE;
+ gboolean _tmp142_ = FALSE;
+ DataImportsFSpotFSpotImportableItem* _tmp143_ = NULL;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp136_ = importable_items;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp136__length1 = importable_items_length1;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp137_ = photo_row;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp138_ = roll_row;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp139_ = tags;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp139__length1 = tags_length1;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp140_ = event;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp141_ = hidden;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp142_ = favorite;
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp143_ = data_imports_fspot_fspot_importable_item_new (_tmp137_, NULL, _tmp138_, _tmp139_, _tmp139__length1, _tmp140_, _tmp141_, _tmp142_);
+#line 496 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _vala_array_add5 (&importable_items, &importable_items_length1, &_importable_items_size_, G_TYPE_CHECK_INSTANCE_CAST (_tmp143_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_MEDIA_ITEM, SpitDataImportsImportableMediaItem));
+#line 4802 "FSpotImporter.c"
+ }
+ }
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_versions);
+#line 4807 "FSpotImporter.c"
+ }
+ goto __finally5;
+ __catch5_database_error:
+ {
+ GError* e = NULL;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp144_ = NULL;
+ gint64 _tmp145_ = 0LL;
+ GError* _tmp146_ = NULL;
+ const gchar* _tmp147_ = NULL;
+ gboolean _tmp148_ = FALSE;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp149_ = NULL;
+ GFile* _tmp150_ = NULL;
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ e = _inner_error_;
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _inner_error_ = NULL;
+#line 504 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp144_ = photo_row;
+#line 504 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp145_ = _tmp144_->photo_id;
+#line 504 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp146_ = e;
+#line 504 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp147_ = _tmp146_->message;
+#line 504 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_message ("FSpotImporter.vala:504: Failed to retrieve versions for photo ID %ld: " \
+"%s", (glong) _tmp145_, _tmp147_);
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp149_ = photo_row;
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp150_ = _tmp149_->base_path;
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp150_ != NULL) {
+#line 4840 "FSpotImporter.c"
+ DataImportsFSpotDbFSpotPhotoRow* _tmp151_ = NULL;
+ const gchar* _tmp152_ = NULL;
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp151_ = photo_row;
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp152_ = _tmp151_->filename;
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp148_ = _tmp152_ != NULL;
+#line 4849 "FSpotImporter.c"
+ } else {
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp148_ = FALSE;
+#line 4853 "FSpotImporter.c"
+ }
+#line 506 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp148_) {
+#line 4857 "FSpotImporter.c"
+ SpitDataImportsImportableMediaItem** _tmp153_ = NULL;
+ gint _tmp153__length1 = 0;
+ DataImportsFSpotDbFSpotPhotoRow* _tmp154_ = NULL;
+ DataImportsFSpotDbFSpotRollRow* _tmp155_ = NULL;
+ DataImportsFSpotFSpotImportableTag** _tmp156_ = NULL;
+ gint _tmp156__length1 = 0;
+ DataImportsFSpotFSpotImportableEvent* _tmp157_ = NULL;
+ gboolean _tmp158_ = FALSE;
+ gboolean _tmp159_ = FALSE;
+ DataImportsFSpotFSpotImportableItem* _tmp160_ = NULL;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp153_ = importable_items;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp153__length1 = importable_items_length1;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp154_ = photo_row;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp155_ = roll_row;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp156_ = tags;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp156__length1 = tags_length1;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp157_ = event;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp158_ = hidden;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp159_ = favorite;
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp160_ = data_imports_fspot_fspot_importable_item_new (_tmp154_, NULL, _tmp155_, _tmp156_, _tmp156__length1, _tmp157_, _tmp158_, _tmp159_);
+#line 507 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _vala_array_add6 (&importable_items, &importable_items_length1, &_importable_items_size_, G_TYPE_CHECK_INSTANCE_CAST (_tmp160_, SPIT_DATA_IMPORTS_TYPE_IMPORTABLE_MEDIA_ITEM, SpitDataImportsImportableMediaItem));
+#line 4890 "FSpotImporter.c"
+ }
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_error_free0 (e);
+#line 4894 "FSpotImporter.c"
+ }
+ __finally5:
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_items = (_vala_array_free (importable_items, importable_items_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_clear_error (&_inner_error_);
+#line 474 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return;
+#line 4923 "FSpotImporter.c"
+ }
+#line 514 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp161_ = self->priv->running;
+#line 514 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp161_) {
+#line 4929 "FSpotImporter.c"
+ SpitDataImportsPluginHost* _tmp162_ = NULL;
+ SpitDataImportsImportableMediaItem** _tmp163_ = NULL;
+ gint _tmp163__length1 = 0;
+ gdouble _tmp164_ = 0.0;
+ gdouble _tmp165_ = 0.0;
+ gdouble _tmp166_ = 0.0;
+ gdouble _tmp167_ = 0.0;
+ gdouble _tmp168_ = 0.0;
+ gdouble _tmp169_ = 0.0;
+ gdouble _tmp170_ = 0.0;
+ SpitDataImportsPluginHost* _tmp171_ = NULL;
+ gdouble _tmp172_ = 0.0;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp162_ = self->priv->host;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp163_ = importable_items;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp163__length1 = importable_items_length1;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp164_ = current_progress;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp165_ = progress_delta_per_photo;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp166_ = progress_plugin_to_host_ratio;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp167_ = progress_delta_per_photo;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp168_ = progress_plugin_to_host_ratio;
+#line 515 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_prepare_media_items_for_import (_tmp162_, _tmp163_, _tmp163__length1, _tmp164_ + (_tmp165_ * _tmp166_), _tmp167_ * (1 - _tmp168_), NULL);
+#line 521 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp169_ = current_progress;
+#line 521 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp170_ = progress_delta_per_photo;
+#line 521 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ current_progress = _tmp169_ + _tmp170_;
+#line 522 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp171_ = self->priv->host;
+#line 522 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp172_ = current_progress;
+#line 522 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_update_import_progress_pane (_tmp171_, _tmp172_, NULL);
+#line 4972 "FSpotImporter.c"
+ } else {
+#line 524 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_items = (_vala_array_free (importable_items, importable_items_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 524 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 524 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 524 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 524 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 524 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ break;
+#line 4986 "FSpotImporter.c"
+ }
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ importable_items = (_vala_array_free (importable_items, importable_items_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (roll_row);
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (event);
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ tags = (_vala_array_free (tags, tags_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (photo_row);
+#line 4998 "FSpotImporter.c"
+ }
+#line 434 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (_photo_row_list);
+#line 5002 "FSpotImporter.c"
+ }
+#line 527 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp173_ = self->priv->host;
+#line 527 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_finalize_import (_tmp173_, _data_imports_fspot_fspot_data_importer_on_imported_items_count_spit_data_imports_imported_items_count_callback, self, NULL);
+#line 399 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (all_photos);
+#line 399 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (tags_cache);
+#line 399 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (database);
+#line 5014 "FSpotImporter.c"
+}
+
+
+void data_imports_fspot_fspot_data_importer_on_imported_items_count (DataImportsFSpotFSpotDataImporter* self, gint imported_items_count) {
+ SpitDataImportsPluginHost* _tmp0_ = NULL;
+ gint _tmp1_ = 0;
+ gchar* _tmp2_ = NULL;
+ gchar* _tmp3_ = NULL;
+#line 530 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER (self));
+#line 531 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = self->priv->host;
+#line 531 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = imported_items_count;
+#line 531 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = g_strdup_printf (DATA_IMPORTS_FSPOT_MESSAGE_FINAL_SCREEN, _tmp1_);
+#line 531 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _tmp2_;
+#line 531 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ spit_data_imports_plugin_host_install_static_message_pane (_tmp0_, _tmp3_, SPIT_DATA_IMPORTS_PLUGIN_HOST_BUTTON_MODE_CLOSE);
+#line 531 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp3_);
+#line 5037 "FSpotImporter.c"
+}
+
+
+static gboolean data_imports_fspot_fspot_data_importer_is_tag_event (DataImportsFSpotFSpotDataImporter* self, DataImportsFSpotFSpotImportableTag* tag) {
+ gboolean result = FALSE;
+ gboolean _result_ = FALSE;
+ DataImportsFSpotFSpotImportableTag* _tmp0_ = NULL;
+ gchar* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+ gboolean _tmp3_ = FALSE;
+ gboolean _tmp4_ = FALSE;
+#line 537 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER (self), FALSE);
+#line 537 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (tag), FALSE);
+#line 538 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = tag;
+#line 538 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = data_imports_fspot_fspot_importable_tag_get_stock_icon (_tmp0_);
+#line 538 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = _tmp1_;
+#line 538 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = g_strcmp0 (DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_STOCK_ICON_EVENTS, _tmp2_) == 0;
+#line 538 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp2_);
+#line 538 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = _tmp3_;
+#line 539 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = _result_;
+#line 539 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!_tmp4_) {
+#line 5069 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableTag* parent = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp5_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp6_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp7_ = NULL;
+#line 540 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = tag;
+#line 540 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = data_imports_fspot_fspot_importable_tag_get_fspot_parent (_tmp5_);
+#line 540 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ parent = _tmp6_;
+#line 541 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = parent;
+#line 541 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp7_ == NULL) {
+#line 542 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = FALSE;
+#line 5086 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableTag* _tmp8_ = NULL;
+ gboolean _tmp9_ = FALSE;
+#line 544 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = parent;
+#line 544 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = data_imports_fspot_fspot_data_importer_is_tag_event (self, _tmp8_);
+#line 544 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = _tmp9_;
+#line 5096 "FSpotImporter.c"
+ }
+#line 539 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (parent);
+#line 5100 "FSpotImporter.c"
+ }
+#line 546 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _result_;
+#line 546 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 5106 "FSpotImporter.c"
+}
+
+
+static gboolean data_imports_fspot_fspot_data_importer_is_tag_hidden (DataImportsFSpotFSpotDataImporter* self, DataImportsFSpotFSpotImportableTag* tag, gint64 hidden_tag_id) {
+ gboolean result = FALSE;
+ gboolean _result_ = FALSE;
+ gint64 _tmp0_ = 0LL;
+ DataImportsFSpotFSpotImportableTag* _tmp1_ = NULL;
+ gint64 _tmp2_ = 0LL;
+ gboolean _tmp3_ = FALSE;
+#line 549 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER (self), FALSE);
+#line 549 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (tag), FALSE);
+#line 550 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = hidden_tag_id;
+#line 550 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = tag;
+#line 550 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = data_imports_fspot_fspot_importable_tag_get_id (_tmp1_);
+#line 550 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = _tmp0_ == _tmp2_;
+#line 551 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = _result_;
+#line 551 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!_tmp3_) {
+#line 5133 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableTag* parent = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp4_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp5_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp6_ = NULL;
+#line 552 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = tag;
+#line 552 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = data_imports_fspot_fspot_importable_tag_get_fspot_parent (_tmp4_);
+#line 552 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ parent = _tmp5_;
+#line 553 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = parent;
+#line 553 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp6_ == NULL) {
+#line 554 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = FALSE;
+#line 5150 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableTag* _tmp7_ = NULL;
+ gint64 _tmp8_ = 0LL;
+ gboolean _tmp9_ = FALSE;
+#line 556 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = parent;
+#line 556 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = hidden_tag_id;
+#line 556 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = data_imports_fspot_fspot_data_importer_is_tag_hidden (self, _tmp7_, _tmp8_);
+#line 556 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = _tmp9_;
+#line 5163 "FSpotImporter.c"
+ }
+#line 551 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (parent);
+#line 5167 "FSpotImporter.c"
+ }
+#line 558 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _result_;
+#line 558 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 5173 "FSpotImporter.c"
+}
+
+
+static gboolean data_imports_fspot_fspot_data_importer_is_tag_favorite (DataImportsFSpotFSpotDataImporter* self, DataImportsFSpotFSpotImportableTag* tag) {
+ gboolean result = FALSE;
+ gboolean _result_ = FALSE;
+ DataImportsFSpotFSpotImportableTag* _tmp0_ = NULL;
+ gchar* _tmp1_ = NULL;
+ gchar* _tmp2_ = NULL;
+ gboolean _tmp3_ = FALSE;
+ gboolean _tmp4_ = FALSE;
+#line 561 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_DATA_IMPORTER (self), FALSE);
+#line 561 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_return_val_if_fail (DATA_IMPORTS_FSPOT_IS_FSPOT_IMPORTABLE_TAG (tag), FALSE);
+#line 562 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp0_ = tag;
+#line 562 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp1_ = data_imports_fspot_fspot_importable_tag_get_stock_icon (_tmp0_);
+#line 562 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp2_ = _tmp1_;
+#line 562 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp3_ = g_strcmp0 (DATA_IMPORTS_FSPOT_DB_FSPOT_TAGS_TABLE_STOCK_ICON_FAV, _tmp2_) == 0;
+#line 562 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_free0 (_tmp2_);
+#line 562 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = _tmp3_;
+#line 563 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp4_ = _result_;
+#line 563 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (!_tmp4_) {
+#line 5205 "FSpotImporter.c"
+ DataImportsFSpotFSpotImportableTag* parent = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp5_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp6_ = NULL;
+ DataImportsFSpotFSpotImportableTag* _tmp7_ = NULL;
+#line 564 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp5_ = tag;
+#line 564 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp6_ = data_imports_fspot_fspot_importable_tag_get_fspot_parent (_tmp5_);
+#line 564 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ parent = _tmp6_;
+#line 565 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp7_ = parent;
+#line 565 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ if (_tmp7_ == NULL) {
+#line 566 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = FALSE;
+#line 5222 "FSpotImporter.c"
+ } else {
+ DataImportsFSpotFSpotImportableTag* _tmp8_ = NULL;
+ gboolean _tmp9_ = FALSE;
+#line 568 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp8_ = parent;
+#line 568 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _tmp9_ = data_imports_fspot_fspot_data_importer_is_tag_favorite (self, _tmp8_);
+#line 568 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _result_ = _tmp9_;
+#line 5232 "FSpotImporter.c"
+ }
+#line 563 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ _g_object_unref0 (parent);
+#line 5236 "FSpotImporter.c"
+ }
+#line 570 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ result = _result_;
+#line 570 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ return result;
+#line 5242 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_class_init (DataImportsFSpotFSpotDataImporterClass * klass) {
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_data_importer_parent_class = g_type_class_peek_parent (klass);
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ g_type_class_add_private (klass, sizeof (DataImportsFSpotFSpotDataImporterPrivate));
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_fspot_data_importer_finalize;
+#line 5253 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_spit_data_imports_data_importer_interface_init (SpitDataImportsDataImporterIface * iface) {
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ data_imports_fspot_fspot_data_importer_spit_data_imports_data_importer_parent_iface = g_type_interface_peek_parent (iface);
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->is_running = (gboolean (*)(SpitDataImportsDataImporter*)) data_imports_fspot_fspot_data_importer_real_is_running;
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->get_service = (SpitDataImportsService* (*)(SpitDataImportsDataImporter*)) data_imports_fspot_fspot_data_importer_real_get_service;
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->start = (void (*)(SpitDataImportsDataImporter*)) data_imports_fspot_fspot_data_importer_real_start;
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->stop = (void (*)(SpitDataImportsDataImporter*)) data_imports_fspot_fspot_data_importer_real_stop;
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->on_library_selected = (void (*)(SpitDataImportsDataImporter*, SpitDataImportsImportableLibrary*)) data_imports_fspot_fspot_data_importer_real_on_library_selected;
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ iface->on_file_selected = (void (*)(SpitDataImportsDataImporter*, GFile*)) data_imports_fspot_fspot_data_importer_real_on_file_selected;
+#line 5272 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_instance_init (DataImportsFSpotFSpotDataImporter * self) {
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv = DATA_IMPORTS_FSPOT_FSPOT_DATA_IMPORTER_GET_PRIVATE (self);
+#line 324 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->host = NULL;
+#line 325 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->service = NULL;
+#line 326 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self->priv->running = FALSE;
+#line 5285 "FSpotImporter.c"
+}
+
+
+static void data_imports_fspot_fspot_data_importer_finalize (GObject* obj) {
+ DataImportsFSpotFSpotDataImporter * self;
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_TYPE_FSPOT_DATA_IMPORTER, DataImportsFSpotFSpotDataImporter);
+#line 322 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotImporter.vala"
+ G_OBJECT_CLASS (data_imports_fspot_fspot_data_importer_parent_class)->finalize (obj);
+#line 5295 "FSpotImporter.c"
+}
+
+
+GType data_imports_fspot_fspot_data_importer_get_type (void) {
+ static volatile gsize data_imports_fspot_fspot_data_importer_type_id__volatile = 0;
+ if (g_once_init_enter (&data_imports_fspot_fspot_data_importer_type_id__volatile)) {
+ static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotFSpotDataImporterClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_fspot_data_importer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotFSpotDataImporter), 0, (GInstanceInitFunc) data_imports_fspot_fspot_data_importer_instance_init, NULL };
+ static const GInterfaceInfo spit_data_imports_data_importer_info = { (GInterfaceInitFunc) data_imports_fspot_fspot_data_importer_spit_data_imports_data_importer_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+ GType data_imports_fspot_fspot_data_importer_type_id;
+ data_imports_fspot_fspot_data_importer_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotFSpotDataImporter", &g_define_type_info, 0);
+ g_type_add_interface_static (data_imports_fspot_fspot_data_importer_type_id, SPIT_DATA_IMPORTS_TYPE_DATA_IMPORTER, &spit_data_imports_data_importer_info);
+ g_once_init_leave (&data_imports_fspot_fspot_data_importer_type_id__volatile, data_imports_fspot_fspot_data_importer_type_id);
+ }
+ return data_imports_fspot_fspot_data_importer_type_id__volatile;
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+ if ((array != NULL) && (destroy_func != NULL)) {
+ int i;
+ for (i = 0; i < array_length; i = i + 1) {
+ if (((gpointer*) array)[i] != NULL) {
+ destroy_func (((gpointer*) array)[i]);
+ }
+ }
+ }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+ _vala_array_destroy (array, array_length, destroy_func);
+ g_free (array);
+}
+
+
+