[Mono-bugs] [Bug 668494] System.Io.Compression.DeflateStream not working
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Wed Feb 2 16:54:20 EST 2011
https://bugzilla.novell.com/show_bug.cgi?id=668494
https://bugzilla.novell.com/show_bug.cgi?id=668494#c1
Garth Tissington <gtissington at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |gtissington at gmail.com
--- Comment #1 from Garth Tissington <gtissington at gmail.com> 2011-02-02 21:54:17 UTC ---
I have looked into this further and traced the mono source code as much I can.
Ultimately
WriteZStrema
DeflateStream.WriteZStream (z_stream, ptr, count); is called correctly from
unsafe void WriteInternal (byte[] array, int offset, int count)
CheckResult is called correctly and never falls through to the error handler
cases. i.e result is always >=0
So, everything in the DeflateStream class appears to be handled correctly.
However, WriteInternal does not produce the correct output file as described in
the original report.
WriteZStream is defined as...
[DllImport (LIBNAME, CallingConvention=CallingConvention.Cdecl)]
static extern int WriteZStream (IntPtr stream, IntPtr buffer, int length);
So I can go no further.
One more note though is that LIBNAME above is defined as
#if MONOTOUCH
const string LIBNAME = "__Internal";
#else
const string LIBNAME = "MonoPosixHelper";
#endif
If I define MONOTOUCH I get the problem as defined here. If I remove the
MONOTOUCH DEF then The app crashes on DllNotFound for MonoPosixHelp.dd
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list