diff options
-rw-r--r-- | include/libmsi-query.h | 3 | ||||
-rw-r--r-- | libmsi/libmsi-database.c | 9 | ||||
-rw-r--r-- | libmsi/libmsi-query.c | 24 | ||||
-rw-r--r-- | tests/testdatabase.c | 277 | ||||
-rw-r--r-- | tests/testrecord.c | 8 | ||||
-rw-r--r-- | tools/msibuild.c | 4 |
6 files changed, 174 insertions, 151 deletions
diff --git a/include/libmsi-query.h b/include/libmsi-query.h index cd63e26..0c6bea9 100644 --- a/include/libmsi-query.h +++ b/include/libmsi-query.h @@ -49,7 +49,8 @@ LibmsiResult libmsi_query_fetch (LibmsiQuery *query, LibmsiRecord **rec); LibmsiResult libmsi_query_execute (LibmsiQuery *query, LibmsiRecord *rec); -LibmsiResult libmsi_query_close (LibmsiQuery *query); +gboolean libmsi_query_close (LibmsiQuery *query, + GError **error); LibmsiDBError libmsi_query_get_error (LibmsiQuery *query, char *buffer, unsigned *buflen); diff --git a/libmsi/libmsi-database.c b/libmsi/libmsi-database.c index fe91d7b..6dafe66 100644 --- a/libmsi/libmsi-database.c +++ b/libmsi/libmsi-database.c @@ -953,6 +953,7 @@ static unsigned msi_add_table_to_db(LibmsiDatabase *db, char **columns, char **t char *prelude; char *columns_sql; char *postlude; + GError *error = NULL; // FIXME: move error handling to caller prelude = msi_build_createsql_prelude(labels[0]); columns_sql = msi_build_createsql_columns(columns, types, num_columns); @@ -975,10 +976,14 @@ static unsigned msi_add_table_to_db(LibmsiDatabase *db, char **columns, char **t goto done; r = _libmsi_query_execute(view, NULL); - libmsi_query_close(view); - g_object_unref(view); + libmsi_query_close(view, &error); + if (error) { + g_critical ("%s", error->message); + g_clear_error (&error); + } done: + g_object_unref(view); msi_free(prelude); msi_free(columns_sql); msi_free(postlude); diff --git a/libmsi/libmsi-query.c b/libmsi/libmsi-query.c index 88e598f..ecb2ce6 100644 --- a/libmsi/libmsi-query.c +++ b/libmsi/libmsi-query.c @@ -229,6 +229,7 @@ unsigned _libmsi_query_iterate_records( LibmsiQuery *view, unsigned *count, { LibmsiRecord *rec = NULL; unsigned r, n = 0, max = 0; + GError *error = NULL; // FIXME: move error handling to caller r = _libmsi_query_execute( view, NULL ); if( r != LIBMSI_RESULT_SUCCESS ) @@ -250,7 +251,11 @@ unsigned _libmsi_query_iterate_records( LibmsiQuery *view, unsigned *count, break; } - libmsi_query_close( view ); + libmsi_query_close( view, &error ); + if (error) { + g_critical ("%s", error->message); + g_clear_error (&error); + } if( count ) *count = n; @@ -269,6 +274,7 @@ LibmsiRecord *_libmsi_query_get_record( LibmsiDatabase *db, const char *fmt, ... unsigned r; int size = 100, res; char *query; + GError *error = NULL; // FIXME: move error to caller /* construct the string */ for (;;) @@ -291,7 +297,11 @@ LibmsiRecord *_libmsi_query_get_record( LibmsiDatabase *db, const char *fmt, ... { _libmsi_query_execute( view, NULL ); _libmsi_query_fetch( view, &rec ); - libmsi_query_close( view ); + libmsi_query_close( view, &error ); + if (error) { + g_critical ("%s", error->message); + g_clear_error (&error); + } g_object_unref(view); } return rec; @@ -411,7 +421,8 @@ LibmsiResult libmsi_query_fetch(LibmsiQuery *query, LibmsiRecord **record) return ret; } -LibmsiResult libmsi_query_close(LibmsiQuery *query) +gboolean +libmsi_query_close (LibmsiQuery *query, GError **error) { LibmsiView *view; unsigned ret; @@ -430,7 +441,12 @@ LibmsiResult libmsi_query_close(LibmsiQuery *query) ret = view->ops->close( view ); g_object_unref(query); - return ret; + + /* FIXME: raise error when it happens */ + if (ret != LIBMSI_RESULT_SUCCESS) + g_set_error_literal (error, LIBMSI_RESULT_ERROR, ret, G_STRFUNC); + + return ret == LIBMSI_RESULT_SUCCESS; } LibmsiResult _libmsi_query_execute(LibmsiQuery *query, LibmsiRecord *rec ) diff --git a/tests/testdatabase.c b/tests/testdatabase.c index 87f457d..4f3d296 100644 --- a/tests/testdatabase.c +++ b/tests/testdatabase.c @@ -158,9 +158,9 @@ static unsigned do_query(LibmsiDatabase *hdb, const char *sql, LibmsiRecord **ph if (r != LIBMSI_RESULT_SUCCESS) return r; ret = libmsi_query_fetch(hquery, phrec); - r = libmsi_query_close(hquery); - if (r != LIBMSI_RESULT_SUCCESS) - return r; + r = libmsi_query_close(hquery, NULL); + if (!r) + return LIBMSI_RESULT_FUNCTION_FAILED; g_object_unref(hquery); return ret; @@ -177,7 +177,8 @@ static unsigned run_query( LibmsiDatabase *hdb, LibmsiRecord *hrec, const char * r = libmsi_query_execute(hquery, hrec); if( r == LIBMSI_RESULT_SUCCESS ) - r = libmsi_query_close(hquery); + r = libmsi_query_close(hquery, NULL) ? + LIBMSI_RESULT_SUCCESS : LIBMSI_RESULT_FUNCTION_FAILED; g_object_unref(hquery); return r; } @@ -302,8 +303,8 @@ static void test_msiinsert(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute(hquery, 0); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); sql = "SELECT * FROM phone WHERE number = '8675309'"; @@ -321,8 +322,8 @@ static void test_msiinsert(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute(hquery, 0); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); r = libmsi_query_fetch(hquery2, &hrec); @@ -333,8 +334,8 @@ static void test_msiinsert(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_fetch failed: %u\n", r); g_object_unref(hrec); - r = libmsi_query_close(hquery2); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery2, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery2); sql = "SELECT * FROM `phone` WHERE `id` = 1"; @@ -404,8 +405,8 @@ static void test_msiinsert(void) { r = libmsi_query_execute(hquery, hrec); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); } g_object_unref(hrec); @@ -436,9 +437,9 @@ static unsigned try_query_param( LibmsiDatabase *hdb, const char *szQuery, Libms if(r != LIBMSI_RESULT_SUCCESS ) res = r; - r = libmsi_query_close( htab ); - if(r != LIBMSI_RESULT_SUCCESS ) - res = r; + r = libmsi_query_close(htab, NULL); + if(!r) + res = LIBMSI_RESULT_FUNCTION_FAILED; g_object_unref( htab ); } @@ -747,8 +748,8 @@ static void test_getcolinfo(void) r = libmsi_query_get_column_info( 0, LIBMSI_COL_INFO_TYPES, &rec ); ok( r == LIBMSI_RESULT_INVALID_HANDLE, "wrong error code\n"); - r = libmsi_query_close(hquery); - ok( r == LIBMSI_RESULT_SUCCESS, "failed to close query\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "failed to close query\n"); g_object_unref(hquery); g_object_unref(hdb); } @@ -768,7 +769,7 @@ static LibmsiRecord *get_column_info(LibmsiDatabase *hdb, const char *sql, Libms { libmsi_query_get_column_info( hquery, type, &rec ); } - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); return rec; } @@ -800,7 +801,7 @@ static unsigned get_columns_table_type(LibmsiDatabase *hdb, const char *table, u g_object_unref( rec ); } } - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); return type; } @@ -954,8 +955,8 @@ static void test_msiexport(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute(hquery, 0); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); /* insert a value into it */ @@ -965,8 +966,8 @@ static void test_msiexport(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute(hquery, 0); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); fd = open(file, O_WRONLY | O_BINARY | O_CREAT, 0644); @@ -1044,7 +1045,7 @@ static void test_longstrings(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_fetch failed\n"); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); str[len+STRING_LENGTH] = '\0'; @@ -1137,7 +1138,7 @@ static void test_streamtable(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "Unexpected result: %u\n", r ); ok(rec == NULL, "Must be null"); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); /* create a summary information stream */ @@ -1164,7 +1165,7 @@ static void test_streamtable(void) ok( r == LIBMSI_RESULT_SUCCESS, "Unexpected result: %u\n", r ); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); /* insert a file into the _Streams table */ @@ -1187,7 +1188,7 @@ static void test_streamtable(void) ok( r == LIBMSI_RESULT_SUCCESS, "Failed to execute query: %d\n", r); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); /* insert another one */ @@ -1210,7 +1211,7 @@ static void test_streamtable(void) ok( r == LIBMSI_RESULT_SUCCESS, "Failed to execute query: %d\n", r); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); query = NULL; @@ -1233,7 +1234,7 @@ static void test_streamtable(void) ok( g_str_equal(buf, "test.txt\n"), "Expected 'test.txt\\n', got %s\n", buf); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); query = NULL; @@ -1256,7 +1257,7 @@ static void test_streamtable(void) ok( g_str_equal(buf, "test1.txt\n"), "Expected 'test1.txt\\n', got %s\n", buf); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); /* perform an update */ @@ -1277,7 +1278,7 @@ static void test_streamtable(void) ok( r == LIBMSI_RESULT_SUCCESS, "Failed to execute query: %d\n", r); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); query = NULL; @@ -1300,7 +1301,7 @@ static void test_streamtable(void) todo_wine ok( g_str_equal(buf, "test2.txt\n"), "Expected 'test2.txt\\n', got %s\n", buf); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); r = run_query( hdb, 0, "DELETE FROM `_Streams` WHERE `Name` = 'data1'" ); @@ -1317,7 +1318,7 @@ static void test_streamtable(void) r = libmsi_query_fetch( query, &rec ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS,, got %d\n", r); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); g_object_unref( hdb ); unlink(msifile); @@ -1486,7 +1487,7 @@ static void test_where_not_in_selected(void) ok( check_record( rec, 1, "cond3"), "wrong condition\n"); g_object_unref( rec ); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref( hdb ); @@ -1583,7 +1584,7 @@ static void test_where(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok(rec == NULL, "Must be null"); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); sql = "SELECT * FROM `Media` WHERE `DiskPrompt` IS NULL"; @@ -1630,7 +1631,7 @@ static void test_where(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref( hdb ); @@ -1880,7 +1881,7 @@ static void test_msiimport(void) ok(i == -2147483640, "Expected -2147483640, got %d\n", i); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); query = NULL; @@ -1930,8 +1931,8 @@ static void test_msiimport(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); + r = libmsi_query_close(query, NULL); + ok(r, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); g_object_unref(query); @@ -1966,7 +1967,7 @@ static void test_msiimport(void) ok(check_record(rec, 6, "s72"), "Expected s72\n"); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); query = NULL; @@ -2003,7 +2004,7 @@ static void test_msiimport(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref(hdb); unlink(msifile); @@ -2272,7 +2273,7 @@ static void test_handle_limit(void) for (i=0; i<MY_NQUERIES; i++) { if (hqueries[i] != 0 && hqueries[i] != (void*)0xdeadbeeb) { - libmsi_query_close(hqueries[i]); + libmsi_query_close(hqueries[i], NULL); g_object_unref(hqueries[i]); } } @@ -2635,7 +2636,7 @@ static void test_try_transform(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "query fetch succeeded\n"); g_object_unref(hrec); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); #if 0 @@ -2907,7 +2908,7 @@ static void test_join(void) ok( i == 5, "Expected 5 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); /* try a join without a WHERE condition */ @@ -2927,7 +2928,7 @@ static void test_join(void) } ok( i == 24, "Expected 24 rows, got %d\n", i ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT DISTINCT Component, ComponentId FROM FeatureComponents, Component " @@ -2967,7 +2968,7 @@ static void test_join(void) ok( i == 2, "Expected 2 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `StdDlls`.`File`, `Binary`.`Data` " @@ -3008,7 +3009,7 @@ static void test_join(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `StdDlls`.`Binary_`, `Binary`.`Name` " @@ -3048,7 +3049,7 @@ static void test_join(void) ok( i == 1, "Expected 1 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` " @@ -3089,7 +3090,7 @@ static void test_join(void) ok( i == 1, "Expected 1 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` " @@ -3129,7 +3130,7 @@ static void test_join(void) ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` " @@ -3170,7 +3171,7 @@ static void test_join(void) ok( i == 3, "Expected 3 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `StdDlls`.`File`, `Binary`.`Data` " @@ -3208,7 +3209,7 @@ static void test_join(void) ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `StdDlls`, `Binary` "; @@ -3257,7 +3258,7 @@ static void test_join(void) ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `One`, `Two`, `Three` "; @@ -3306,7 +3307,7 @@ static void test_join(void) ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "expected no more items: %d\n", r ); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `Four`, `Five`"; @@ -3319,7 +3320,7 @@ static void test_join(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `Nonexistent`, `One`"; @@ -3425,7 +3426,7 @@ static void test_temporary_table(void) check_record_string(rec, 2, "j2"); g_object_unref( rec ); - libmsi_query_close( query ); + libmsi_query_close(query , NULL); g_object_unref( query ); /* query the table data */ @@ -3649,8 +3650,8 @@ static void test_integers(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n", NULL); g_object_unref(query); sql = "SELECT * FROM `integers`"; @@ -3687,7 +3688,7 @@ static void test_integers(void) ok(check_record(rec, 8, "i4"), "Expected i4\n"); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); /* insert values into it, NULL where NOT NULL is specified */ @@ -3699,7 +3700,7 @@ static void test_integers(void) r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_FUNCTION_FAILED, "Expected LIBMSI_RESULT_FUNCTION_FAILED, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); sql = "SELECT * FROM `integers`"; @@ -3744,7 +3745,7 @@ static void test_integers(void) ok(i == 8, "Expected 8, got %d\n", i); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); r = libmsi_database_commit(hdb); @@ -3780,8 +3781,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* add a control */ @@ -3794,8 +3795,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* add a second control */ @@ -3808,8 +3809,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r , "libmsi_query_close failed\n"); g_object_unref(query); /* add a third control */ @@ -3822,8 +3823,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* bad table */ @@ -3851,8 +3852,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* check the modified text */ @@ -3878,8 +3879,8 @@ static void test_update(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* dialog_ and control specified */ @@ -3889,8 +3890,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* check the modified text */ @@ -3916,8 +3917,8 @@ static void test_update(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* no where condition */ @@ -3927,8 +3928,8 @@ static void test_update(void) ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute(query, 0); ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); /* check the modified text */ @@ -3960,8 +3961,8 @@ static void test_update(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - r = libmsi_query_close(query); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(query, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(query); sql = "CREATE TABLE `Apple` ( `Banana` CHAR(72) NOT NULL, " @@ -4028,7 +4029,7 @@ static void test_update(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expectd LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); r = libmsi_database_commit(hdb); @@ -4131,8 +4132,8 @@ static void test_tables_order(void) check_record_string(hrec, 1, "bar"); g_object_unref(hrec); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); /* The names of the tables in the _Columns table must @@ -4174,8 +4175,8 @@ static void test_tables_order(void) check_record_string(hrec, 3, "foo"); g_object_unref(hrec); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); g_object_unref(hdb); @@ -4282,8 +4283,8 @@ static void test_rows_order(void) check_record_string(hrec, 2, "A"); g_object_unref(hrec); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); g_object_unref(hdb); @@ -4389,8 +4390,8 @@ static void test_collation(void) check_record_string(hrec, 2, "D"); g_object_unref(hrec); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); r = libmsi_database_open_query(hdb, sql6, &hquery); @@ -4411,8 +4412,8 @@ static void test_collation(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "libmsi_query_fetch failed\n"); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close(hquery, NULL); + ok(r, "libmsi_query_close failed\n"); g_object_unref(hquery); g_object_unref(hdb); @@ -4493,7 +4494,7 @@ static void test_select_markers(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); rec = libmsi_record_new(2); @@ -4533,7 +4534,7 @@ static void test_select_markers(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref(hdb); unlink(msifile); @@ -4659,8 +4660,8 @@ static void test_stringtable(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); + r = libmsi_query_close(hquery, NULL); + ok(r, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); g_object_unref(hquery); g_object_unref(hrec); @@ -4700,8 +4701,8 @@ static void test_stringtable(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - r = libmsi_query_close(hquery); - ok(r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); + r = libmsi_query_close(hquery, NULL); + ok(r, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); g_object_unref(hquery); g_object_unref(hrec); g_object_unref(hdb); @@ -4972,7 +4973,7 @@ static void test_order(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `A`, `D` FROM `Mesa`, `Sideboard` ORDER BY `F`"; @@ -5083,7 +5084,7 @@ static void test_order(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `Empty` ORDER BY `A`"; @@ -5095,7 +5096,7 @@ static void test_order(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "CREATE TABLE `Buffet` ( `One` CHAR(72), `Two` SHORT PRIMARY KEY `One`)"; @@ -5133,7 +5134,7 @@ static void test_order(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); g_object_unref(hdb); } @@ -5193,7 +5194,7 @@ static void test_deleterow(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); g_object_unref(hdb); unlink(msifile); @@ -5271,7 +5272,7 @@ static void test_quotes(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); write_file("import.idt", import_dat, (sizeof(import_dat) - 1) * sizeof(char)); @@ -5298,7 +5299,7 @@ static void test_quotes(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); g_object_unref(hdb); unlink(msifile); @@ -5473,7 +5474,7 @@ static void test_carriagereturn(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); g_object_unref(hdb); @@ -5538,7 +5539,7 @@ static void test_noquotes(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `_Columns`"; @@ -5583,7 +5584,7 @@ static void test_noquotes(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "INSERT INTO Table ( `A` ) VALUES ( 'hi' )"; @@ -5620,7 +5621,7 @@ static void test_noquotes(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `Table` WHERE A = 'hi'"; @@ -5638,7 +5639,7 @@ static void test_noquotes(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); g_object_unref(hdb); unlink(msifile); @@ -5826,7 +5827,7 @@ static void test_storages_table(void) ok(r == LIBMSI_RESULT_SUCCESS, "Failed to execute hquery: %d\n", r); g_object_unref(hrec); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT `Name`, `Data` FROM `_Storages`"; @@ -5853,7 +5854,7 @@ static void test_storages_table(void) r = libmsi_query_fetch(hquery, &hrec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); libmsi_database_commit(hdb); @@ -5922,7 +5923,7 @@ static void test_droptable(void) check_record_string(hrec, 1, "One"); g_object_unref(hrec); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `_Columns` WHERE `Table` = 'One'"; @@ -5946,7 +5947,7 @@ static void test_droptable(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "DROP `One`"; @@ -5970,7 +5971,7 @@ static void test_droptable(void) ok(r == LIBMSI_RESULT_FUNCTION_FAILED, "Expected LIBMSI_RESULT_FUNCTION_FAILED, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `IDontExist`"; @@ -6024,7 +6025,7 @@ static void test_droptable(void) check_record_string(hrec, 1, "One"); g_object_unref(hrec); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "SELECT * FROM `_Columns` WHERE `Table` = 'One'"; @@ -6059,7 +6060,7 @@ static void test_droptable(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "DROP TABLE One"; @@ -6425,7 +6426,7 @@ static void test_dbmerge(void) check_record_string(hrec, 2, "i2"); g_object_unref(hrec); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); sql = "DROP TABLE `MergeErrors`"; @@ -6663,7 +6664,7 @@ static void test_dbmerge(void) ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(hquery); + libmsi_query_close(hquery, NULL); g_object_unref(hquery); g_object_unref(hdb); @@ -6745,7 +6746,7 @@ static void test_select_with_tablenames(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref(hdb); unlink(msifile); @@ -6857,7 +6858,7 @@ static void test_insertorder(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); sql = "DELETE FROM `T` WHERE `A` IS NULL"; @@ -6895,7 +6896,7 @@ static void test_insertorder(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref(hdb); unlink(msifile); @@ -6969,7 +6970,7 @@ static void test_columnorder(void) check_record_string(rec, 5, "B"); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); sql = "INSERT INTO `T` ( `B`, `C`, `A`, `E`, `D` ) " @@ -7061,7 +7062,7 @@ static void test_columnorder(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); sql = "CREATE TABLE `Z` ( `B` SHORT NOT NULL, `C` SHORT NOT NULL, " @@ -7097,7 +7098,7 @@ static void test_columnorder(void) check_record_string(rec, 5, "B"); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); sql = "INSERT INTO `Z` ( `B`, `C`, `A`, `E`, `D` ) " @@ -7188,7 +7189,7 @@ static void test_columnorder(void) r = libmsi_query_fetch(query, &rec); ok(r == LIBMSI_RESULT_NO_MORE_ITEMS, "Expected LIBMSI_RESULT_NO_MORE_ITEMS, got %d\n", r); - libmsi_query_close(query); + libmsi_query_close(query, NULL); g_object_unref(query); g_object_unref(hdb); @@ -7226,8 +7227,8 @@ static void test_createtable(void) g_free(str); g_object_unref( hrec ); - res = libmsi_query_close( htab ); - ok(res == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); + res = libmsi_query_close(htab , NULL); + ok(res, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); g_object_unref( htab ); } @@ -7240,8 +7241,8 @@ static void test_createtable(void) res = libmsi_query_execute( htab, 0 ); ok(res == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); - res = libmsi_query_close( htab ); - ok(res == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); + res = libmsi_query_close(htab, NULL); + ok(res, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); g_object_unref( htab ); @@ -7256,8 +7257,8 @@ static void test_createtable(void) check_record_string(hrec, 1, "b"); g_object_unref( hrec ); - res = libmsi_query_close( htab ); - ok(res == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); + res = libmsi_query_close(htab , NULL); + ok(res, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); g_object_unref( htab ); @@ -7280,8 +7281,8 @@ static void test_createtable(void) check_record_string(hrec, 1, "b"); g_object_unref( hrec ); - res = libmsi_query_close( htab ); - ok(res == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); + res = libmsi_query_close(htab , NULL); + ok(res, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", res); g_object_unref( htab ); } @@ -7420,7 +7421,7 @@ static void test_select_column_names(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "unexpected result: %u\n", r ); ok(rec == NULL, "Must be null"); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); query = NULL; @@ -7446,7 +7447,7 @@ static void test_select_column_names(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "unexpected result: %u\n", r ); ok(rec == NULL, "Must be null"); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); query = NULL; @@ -7474,7 +7475,7 @@ static void test_select_column_names(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "unexpected result: %u\n", r ); ok(rec == NULL, "Must be null"); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); query = NULL; @@ -7504,7 +7505,7 @@ static void test_select_column_names(void) ok( r == LIBMSI_RESULT_NO_MORE_ITEMS, "unexpected result: %u\n", r ); ok(rec == NULL, "Must be null"); - libmsi_query_close( query ); + libmsi_query_close(query, NULL); g_object_unref( query ); r = try_query( hdb, "SELECT '' FROM `t` WHERE `t`.`b` = 'x'" ); diff --git a/tests/testrecord.c b/tests/testrecord.c index 67061c0..8a095df 100644 --- a/tests/testrecord.c +++ b/tests/testrecord.c @@ -376,8 +376,8 @@ static void test_fieldzero (void) ok (r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); r = libmsi_query_execute (hview, 0); ok (r == LIBMSI_RESULT_SUCCESS, "Expected LIBMSI_RESULT_SUCCESS, got %d\n", r); - r = libmsi_query_close (hview); - ok (r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close (hview, NULL); + ok (r, "libmsi_query_close failed\n"); g_object_unref (hview); query = "INSERT INTO `drone` ( `id`, `name`, `number` )" @@ -386,8 +386,8 @@ static void test_fieldzero (void) ok (r == LIBMSI_RESULT_SUCCESS, "libmsi_database_open_query failed\n"); r = libmsi_query_execute (hview, 0); ok (r == LIBMSI_RESULT_SUCCESS, "libmsi_query_execute failed\n"); - r = libmsi_query_close (hview); - ok (r == LIBMSI_RESULT_SUCCESS, "libmsi_query_close failed\n"); + r = libmsi_query_close (hview, NULL); + ok (r, "libmsi_query_close failed\n"); g_object_unref (hview); rec = NULL; diff --git a/tools/msibuild.c b/tools/msibuild.c index d437292..e8b9e75 100644 --- a/tools/msibuild.c +++ b/tools/msibuild.c @@ -195,7 +195,7 @@ static int add_stream(const char *stream, const char *file, GError **error) fprintf(stderr, "failed to execute query (%u)\n", r); g_object_unref(rec); - libmsi_query_close(query); + libmsi_query_close(query, error); g_object_unref(query); return r; } @@ -216,7 +216,7 @@ static int do_query(const char *sql, void *opaque) if (r != LIBMSI_RESULT_SUCCESS) fprintf(stderr, "failed to execute query (%u)\n", r); - libmsi_query_close(query); + libmsi_query_close(query, error); g_object_unref(query); return r; } |