summaryrefslogtreecommitdiffstats
path: root/libmsi/libmsi-database.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmsi/libmsi-database.c')
-rw-r--r--libmsi/libmsi-database.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/libmsi/libmsi-database.c b/libmsi/libmsi-database.c
index 271e1f8..de1456a 100644
--- a/libmsi/libmsi-database.c
+++ b/libmsi/libmsi-database.c
@@ -2178,8 +2178,10 @@ end:
return ret;
}
-LibmsiResult libmsi_database_apply_transform( LibmsiDatabase *db,
- const char *szTransformFile)
+gboolean
+libmsi_database_apply_transform (LibmsiDatabase *db,
+ const char *szTransformFile,
+ GError **error)
{
unsigned r;
@@ -2188,7 +2190,11 @@ LibmsiResult libmsi_database_apply_transform( LibmsiDatabase *db,
return LIBMSI_RESULT_INVALID_HANDLE;
r = _libmsi_database_apply_transform( db, szTransformFile );
g_object_unref(db);
- return r;
+
+ if (r != LIBMSI_RESULT_SUCCESS)
+ g_set_error_literal (error, LIBMSI_RESULT_ERROR, r, G_STRFUNC);
+
+ return r == LIBMSI_RESULT_SUCCESS;
}
static int gsf_infile_copy(GsfInfile *inf, GsfOutfile *outf)