Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Hi,

I'm not that familiar with the source code of LibreOffice. The last past weeks I'm helping the QA-team.

I try now to take a little step forward and try to comprehend a bit of the source code. I would like to help core developers point at regressions (find the erroneous commit). In first instance just point to it, maybe in a later stage try to fix it on my own.

Said that I'm now intrigued by bug/regression https://bugs.freedesktop.org/show_bug.cgi?id=54264 (I'm a Mac OSX user).
Quote (Roman Eisele):

"If I select two or more files which should open with LibreOffice (e.g., .odt or .rtf or .xls 
files) in the Finder and press Command + O or drag both/all files on the LibreOffice application icon, 
LibreOffice does not open the files (as expected),
but shows an alert which says "<path of 1st document><path of 2nd document> does not exist.". "

Following the alert, I can search for the string 'does not exists.'. I found it here: http://opengrok.libreoffice.org/xref/core/fpicker/source/office/iodlg.src#286 :
String RID_FILEOPEN_INVALIDFOLDER
{
Text [ en-US ] = "$name$ does not exist.";
};

So my search goes further ... by what is this string triggered/where is it defined? http://opengrok.libreoffice.org/xref/core/fpicker/source/office/OfficeFilePicker.hrc#39 :

#define RID_FILEOPEN_INVALIDFOLDER                  (RID_FPICKER_START+23)

Now I need to search for 'RID_FPICKER_START' ... and I found it here: http://opengrok.libreoffice.org/xref/core/svl/inc/svl/solar.hrc#63

#define RID_FPICKER_START           (RID_LIB_START+6370)

and on line 36 of that file (solar.hrc)

#define RID_LIB_START               10000


Ok... Now I found this ... Can I 'conclude' that my string is at 'position' 16393 (=23 + 6370 + 10000). That's 0x4009 in hex notation. I searched for 0x4009 and 16393; but I can't find anything relevant where this could be triggered. On top of 'solar.hrc' (line 27 and 28) there is a function:

#define CREATERESMGR_NAME( Name )   #Name
#define CREATERESMGR( Name )        ResMgr::CreateResMgr( CREATERESMGR_NAME( Name ) )


As far I can comprehend I guess ResMgr::CreateResMgr (found here http://opengrok.libreoffice.org/xref/core/tools/source/rc/resmgr.cxx#CreateResMgr) is the function that chooses the correct string... And there I'm stuck I think :s. Because the bug is a regression bug 3.5 vs 3.6, and the source code of 3.6 is frozen on "Week 23, Jun 4 - Jun 10, 2012" I compared the current version of resmgr.cxx with a version at the beginning of 2012 (to be sure not overlook something)... But I couldn't find something. Otherwise with this information I still can't find the code that triggers the string.

1) Is this information useful for a developer? (should I add that information to the bug report?)
2) Am I'm doing it right?

Thanks in advance,
Joren




Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.