Bug 125153 - StarViewMetafile import regression
Summary: StarViewMetafile import regression
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
6.2.0.3 release
Hardware: All All
: medium normal
Assignee: Michael Stahl (allotropia)
URL:
Whiteboard: target:6.3.0 target:6.2.4
Keywords: bibisected, bisected, regression
Depends on:
Blocks:
 
Reported: 2019-05-07 10:00 UTC by Michael Stahl (allotropia)
Modified: 2019-05-15 02:56 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
reproducer (17.50 KB, image/x-svm)
2019-05-07 10:03 UTC, Michael Stahl (allotropia)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Stahl (allotropia) 2019-05-07 10:00:35 UTC
Description:
there is another performance problem though, which is *not* an infinite loop but at least in a debug build it's taking a bloody long time scaling a bitmap inside a metafile that must be somewhere in the document to a width of 865 million pixels; this is due to these values read from the metafile:

MetaBmpExScaleAction::Read()

p maPt
$43 = Point = {
  x = 621353314,
  y = -1397620223
}
p maSz
$44 = Size = {
  width = 1917665794,
  height = 242
}

this happens while creating preview image in SfxPickListImpl::AddDocumentToPickList() during load.

bibisected to:

commit b67d9a5db61de3cef2dac072c55bf1dac9a2dc4c
Author:     Caolán McNamara <caolanm@redhat.com>
AuthorDate: Wed Oct 10 16:48:06 2018 +0100

    can use remainingSize instead of Seek(STREAM_SEEK_TO_END)
 

Steps to Reproduce:
1. open attached SVM


Actual Results:
 marvel at nothingness being displayed

Expected Results:
an image


Reproducible: Always


User Profile Reset: No



Additional Info:
Comment 1 Michael Stahl (allotropia) 2019-05-07 10:03:41 UTC
Created attachment 151215 [details]
reproducer

extracted from document of bug 124281 because that one triggers infinite loop in layout...
Comment 2 Commit Notification 2019-05-07 14:28:03 UTC
Michael Stahl committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/+/34d1280271b74e1764bd4d1e34cb53b2b0c0dd62%5E%21

tdf#125153 vcl: fix ImplReadDIBFileHeader()

It will be available in 6.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 3 Michael Stahl (allotropia) 2019-05-07 14:37:41 UTC
fixed on master
Comment 4 Commit Notification 2019-05-08 10:42:32 UTC
Michael Stahl committed a patch related to this issue.
It has been pushed to "libreoffice-6-2":

https://git.libreoffice.org/core/+/ddb78c7435444e74c4175156025c1dc596029afe%5E%21

tdf#125153 vcl: fix ImplReadDIBFileHeader()

It will be available in 6.2.5.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 5 Xisco Faulí 2019-05-08 10:47:17 UTC
If I import the image in writer, it doesn't hang for me, but the image is blank.
Fixed after Michael's commit. Verified in

Version: 6.3.0.0.alpha0+
Build ID: 299e34275574d4fa0d9b175231f5cfdbb49c4f4c
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US
Calc: threaded

@Michael, Stahl, thanks for fixing this issue!
Comment 6 Commit Notification 2019-05-08 12:08:58 UTC
Michael Stahl committed a patch related to this issue.
It has been pushed to "libreoffice-6-2-4":

https://git.libreoffice.org/core/+/62d1222fde5adff3949e4ea5a593f3aff6fe8631%5E%21

tdf#125153 vcl: fix ImplReadDIBFileHeader()

It will be available in 6.2.4.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.