diff --git a/dlls/msi/package.c b/dlls/msi/package.c index eae01e0a5bb..e195764d5d3 100644 --- a/dlls/msi/package.c +++ b/dlls/msi/package.c @@ -1818,8 +1818,7 @@ INT MSI_ProcessMessage( MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIREC if (gUIHandlerRecord && (gUIFilterRecord & log_type)) { - MSIHANDLE rec = MsiCreateRecord( 1 ); - MsiRecordSetStringW( rec, 0, message ); + MSIHANDLE rec = alloc_msihandle(&record->hdr); TRACE("Calling UI handler %p(pvContext=%p, iMessageType=%08x, hRecord=%u)\n", gUIHandlerRecord, gUIContextRecord, eMessageType, rec); rc = gUIHandlerRecord( gUIContextRecord, eMessageType, rec ); diff --git a/dlls/msi/tests/package.c b/dlls/msi/tests/package.c index a7cec7f5737..146d1fc6a6b 100644 --- a/dlls/msi/tests/package.c +++ b/dlls/msi/tests/package.c @@ -9096,7 +9096,6 @@ static INT CALLBACK externalui_record_callback(void *context, UINT message_type, r = MsiRecordGetFieldCount(hrecord); ok(r == 1, "expected 1, got %u\n", r); r = MsiRecordGetInteger(hrecord, 1); - todo_wine ok(r == 12345, "expected 12345, got %u\n", r); return retval; }