[Mono-bugs] [Bug 549173] mono_string_builder_to_utf16() returns unitialized data
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Thu Oct 22 15:37:09 EDT 2009
http://bugzilla.novell.com/show_bug.cgi?id=549173
User hib at hiberis.nl added comment
http://bugzilla.novell.com/show_bug.cgi?id=549173#c2
--- Comment #2 from Hib Eris <hib at hiberis.nl> 2009-10-22 21:37:05 CEST ---
I have no proper testcase.
It fixes the problem I had with running 'light' from the Windows Installer Xml
toolkit though.
That does something like:
[DllImport("msi.dll", EntryPoint = "MsiGetFileVersionW", CharSet =
CharSet.Unicode, ExactSpelling = true)]
internal static extern int MsiGetFileVersion(string filePath, StringBuilder
versionBuf, ref int versionBufSize, StringBuilder langBuf, ref int
langBufSize);
filepath = "some_non_existing_name";
int versionLength = 20;
int languageLength = 20;
StringBuilder versionBuffer = new StringBuilder(versionLength);
StringBuilder languageBuffer = new StringBuilder(languageLength);
error = MsiGetFileVersion(filePath, versionBuffer, ref versionLength,
languageBuffer, ref languageLength);
The dll function MsiGetFileVersion does not set versionBuffer when it fails,
thus it should not return a StringBuilder versionBuffer with random bits from
memory. With the patch applied it works fine. Thanks.
(I am running this under Wine, with Mono for Windows)
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the mono-bugs
mailing list