Bug 124858 - using UNOCONV to convert a docx to doc through soffice (version 6.x.x) socket,host urp interface were the docx file contains a "floating" image the socket transfer process will appear to drop the image from the doc file
Summary: using UNOCONV to convert a docx to doc through soffice (version 6.x.x) socket...
Status: RESOLVED INSUFFICIENTDATA
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
6.2.3.2 release
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-04-20 12:01 UTC by chrislrobsn
Modified: 2020-04-25 03:39 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description chrislrobsn 2019-04-20 12:01:59 UTC
Description:
Test setup:
1. run the soffice (version 6.x) receiver:
soffice --accept="socket,host=localhost,port=8101;urp;" --headless --norestore
2. run unoconv:
unoconv --connection 'socket,host=127.0.0.1,port=8101;urp;StarOffice.Component' -f doc testdoc.docx
3. run soffice testdocx to "manually" convert document through save as doc function.
Test validation steps:
1. opening testdoc.doc(unoconv produced document) file reveals image is missing from file.  However, document side seems to report image does exist.
2. opening testdoc.doc(produced manually) file reveals image within document
3. File sizes of both files (unoconv and manual) are equal.
4. using "vbindiff testdoc.doc(unoconv) testdoc.doc(manual)" reveals a 8 byte location has been zeroed in the testdoc.doc(unoconv) file.  Editing these 8 bytes in the unoconv file to match the manually created file results in the unoconv testdoc.doc file now displaying the image in soffice.

Additional testing steps:
1. Uninstall Libreoffice ( dnf remove libreoffice* )
2. Install OpenOffice ( dnf iinstall openoffice* aka latest openoffice)
3. run the soffice receiver for openoffice (v4.1.6):
soffice --accept="socket,host=localhost,port=8101;urp;" --headless --norestore
2. rerun a unoconv so:
unoconv --connection 'socket,host=127.0.0.1,port=8101;urp;StarOffice.Component' -f doc testdoc.docx
Test validation:
Results reveal the converted document image is intact and can be found in the newly converted document.

Observation:
1. Modifying the failed test doc file's 8 bytes seems to indicate a memory location is being corrupted.  Not sure why. still investigating why.
2. OpenOffice is still using Python 2.7 while LibreOffice is up to Python release 3.5.7.  This seems to indicate the pyuno.so maybe corrupting the socket transfer of images within the source document.

Test document content is a simple one page document created by Microsoft Word containing a single image.  It must be created by MS Word and must be a floating image, aka, dragged/dropped jpeg/png/etc image (not file) into the MS Word document.


Steps to Reproduce:
1.See description
2.
3.

Actual Results:
dropped image from converted file yet file size is as expected if image was still found in document

Expected Results:
image within converted file


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Comment 1 Buovjaga 2019-08-17 13:10:35 UTC
(In reply to chrislrobsn from comment #0)
> 2. run unoconv:
> unoconv --connection
> 'socket,host=127.0.0.1,port=8101;urp;StarOffice.Component' -f doc
> testdoc.docx

I get a core dump at this step.
Unoconv version 0.8.2

Arch Linux 64-bit
Version: 6.4.0.0.alpha0+
Build ID: b9a776837462eeb6d50d0decc42604c0c3008eb1
CPU threads: 8; OS: Linux 5.2; UI render: default; VCL: kf5; 
Locale: fi-FI (fi_FI.UTF-8); UI-Language: en-US
Calc: threaded
Built on 11 August 2019
Comment 2 Xisco Faulí 2019-09-26 08:29:44 UTC
Hello,
Could you please attach the .docx file you're converting ?
Comment 3 QA Administrators 2020-03-25 02:40:46 UTC Comment hidden (obsolete)
Comment 4 QA Administrators 2020-04-25 03:39:02 UTC
Dear chrislrobsn,

Please read this message in its entirety before proceeding.

Your bug report is being closed as INSUFFICIENTDATA due to inactivity and
a lack of information which is needed in order to accurately
reproduce and confirm the problem. We encourage you to retest
your bug against the latest release. If the issue is still
present in the latest stable release, we need the following
information (please ignore any that you've already provided):

a) Provide details of your system including your operating
   system and the latest version of LibreOffice that you have
   confirmed the bug to be present

b) Provide easy to reproduce steps – the simpler the better

c) Provide any test case(s) which will help us confirm the problem

d) Provide screenshots of the problem if you think it might help

e) Read all comments and provide any requested information

Once all of this is done, please set the bug back to UNCONFIRMED
and we will attempt to reproduce the issue. Please do not:

a) respond via email 

b) update the version field in the bug or any of the other details
   on the top section of our bug tracker

Warm Regards,
QA Team

MassPing-NeedInfo-FollowUp