First steps finding regression bug(s)

Joren joren.libreoffice at telenet.be
Wed Jan 2 10:59:54 PST 2013


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



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20130102/9ada694c/attachment-0001.html>


More information about the LibreOffice mailing list