Wine & .NET app

Reece Dunn msclrhd at googlemail.com
Mon Sep 6 18:45:26 CDT 2010


On 7 September 2010 00:26, Vassilis Virvilis <vasvir at iit.demokritos.gr> wrote:
> On 07/09/2010 02:02 πμ, Reece Dunn wrote:
>>
>> Googling the error indicates that it is coming from libjpeg:
>>
>> JMESSAGE(JERR_CONVERSION_NOTIMPL, "Unsupported color conversion request")
>
> thanks.
>
>>
>> You probably want the windowscodecs trace output to see where it is
>> failing.
>>
>>> 2) JpegDecoder_Frame_GetResolution doesn't look terribly difficult to
>>> implement. Am I completely misguided?
>>
>> Looking at the parameter names they indicate that the resolutions are
>> in dots per inch (DPI), so that may complicate things a bit. As
>> always, this will need test coverage.
>>
>>> 3) URL_ParseUrl lives in in dlls/shwapi/url.c around 1979. The
>>> implementation looks fleshed enough. What is the problem?
>>
>> URL_ParseUrl is being passed a URL like "System.Xml" -- the function
>> is not handling this as a valid URL.
>>
>> Here, tests will be needed to see how Windows behaves and the wine
>> implementation should then be improved to cover that/those cases.
>>
>>> 4) The GUID are referring to IManaged, IProvideClassInfo, IMarshal,
>>> IRpcOptions. What is the implementation scope of these?
>>
>> Looking at the fixme's -- fixme:ole:OLEPictureImpl_QueryInterface ()
>> -- those interfaces are being requested for and not found in the
>> OLEPicture implementation.
>>
>> NOTE: A test case will need to be added for each of these to check if
>> Windows actually implements those interfaces for the OLEPicture
>> object.
>>
>> Something along the lines of:
>>
>>     IUnknown *picture = ...; /* OLEPicture object from existing tests. */
>>     IManaged * managed = NULL;
>>     HRESULT hr;
>>     int refcount;
>>
>>     hr = picture->QueryInterface(&IID_IManaged, (void **)&managed);
>>     ok(hr == S_OK, "OLEPicture should support IManaged: expected S_OK,
>> got 0x%08x\n", hr);
>>
>>     IUnknown_AddRef(picture);
>>     refcount = IUnknown_Release(picture);
>>     ok(refcount == 2, "Expected there to be 2 references to
>> OLEPicture, got %d\n", refcount);
>>
>>     text_picture_managed(managed); /* test IManaged methods */
>>
>>     IUnknown_Release(managed);
>>
>>> Here is the log:
>>> fixme:actctx:parse_manifest_buffer root element is L"asmv1:assembly",
>>> not<assembly>
>>
>> Manifest parsing should support xmlns:name="..." qualifiers for
>> elements as well as xmlns="..." qualifiers. This will need tests.
>>
>
> Also thanks for the code dump. I will try to add that code as an OLE test
> and see what happens.
> I am a wine and git newbie so that may take while.
>
> One more question: Based on your experience what do you think is the first
> thing look after in
> order to move my application forward. I would say the color conversion
> problem and or the
> jpegDecoder_Frame_GetResolution...

I'd say look at what is causing the color conversion error first, then
look at GetResolution. I don't know that area of the code -- that
would be Vincent Povirk.

These two traces could be related, so I would alse check adding the
wincodecs debug channel to see the jpegformat.c tracing and which
function the color conversion error is happening in.

Also, if it is failing to load a specific jpeg on disk, you might want
to see if libjpeg can decode it properly.

- Reece



More information about the wine-devel mailing list