Test failure in embeddedobj on some Windows systems

Stephan Bergmann sbergman at redhat.com
Wed Nov 30 10:18:00 UTC 2022


On 19/11/2022 15:37, Ilmari Lauhakangas wrote:
> I asked Hossein how the new dev could continue debugging the issue and 
> he looked into it a bit:
> 
> "as I understand from the code, the checks does not happen when the DPI 
> is not 96, in which I think most of the today's displays are not.
> 
> embeddedobj/qa/cppunit/msole.cxx:98
> 
> CPPUNIT_TEST_FIXTURE(Test, testSaveOnThread)
> {
>      // Given an embedded object which hosts mspaint data:
>      if (Application::GetDefaultDevice()->GetDPIX() != 96)
>      {
>          return;
>      }
> .
> .
> .
> }
> 
> I changed the code to bypass this condition, and then I saw the test 
> failing as I expected, as it is tailored to 96 dpi only. On my machine, 
> it failed with 0.0555in instead of 0.1665in.
> 
> I also wasn't faced with RPC_E_WRONG_THREAD value of `hr`, but it was 
> shown as `S_OK`, passing SUCCEEDED().

If anybody has an (explicitly, or implicitly via --enable-debug or 
--enable-dbgutil) --enable-sal-log Windows build for which 
CppunitTest_embeddedobj_msole succeeds and fully executes that above 
testSaveOnThread because it is run with 96 DPI (so that that above "96 
DPI" check succeeds):  I would be interested in the resulting 
workdir/CppunitTest/embeddedobj_msole.test.log



More information about the LibreOffice mailing list