Bug 71099

Summary: Creation Persistant Class Store hangs
Product: [Applications] kdevelop Reporter: Patrick Bardet <patrick.bardet>
Component: generalAssignee: KDevelop Developers <kdevelop-devel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 3.0.0b2   
Target Milestone: ---   
Platform: RedHat Enterprise Linux   
OS: Linux   
Latest Commit: Version Fixed In:

Description Patrick Bardet 2003-12-23 10:24:48 UTC
Version:           3.0.0b2 (using KDE KDE 3.1.94)
Installed from:    RedHat RPMs
Compiler:          gcc 3.2 
OS:          Linux

When we create a Persitant Class Store for XML parser includes files (xerces) via "Add Persistant Class Store" button and then selecting "Kdevelop Custom Directory PCS importer", when kdevelop creates the class store, we have creating progress bar blocked at about 10 %. 

The includes files are found on site xml.apache.org.
Comment 1 Amilcar do Carmo Lucas 2004-01-06 18:07:31 UTC
Can you update to KDevelop CVS HEAD and retest?
Comment 2 Patrick Bardet 2004-05-11 11:07:43 UTC
This bug is still valid with kdevelop 3.0.2 (using KDE 3.2.1-0.1 Red-Hat).
Comment 3 Jens Dagerbo 2004-05-12 18:56:04 UTC
Could you explain exactly what package and what part of that package you parse?

I just tried the src/xerces directory of xerces-c-current.tar.gz and while I have yet to make it complete anything (I think due to that namespace macro) it doesn't crash either.
Comment 4 Patrick Bardet 2004-05-13 09:15:53 UTC
Hi,

I parsed the include part of xerces.
You're right if I parse the src part, the class store is created and does not hang.
However, the code completion does not work (certainly due to the use of macros).

Regards,

Patrick.

> -----Original Message-----
> From: Jens Dagerbo [mailto:jens.dagerbo@swipnet.se]
> Sent: mercredi 12 mai 2004 18:56
> To: Patrick Bardet
> Subject: [Bug 71099] Creation Persistant Class Store hangs 
> 
> 
> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
> You are a voter for the bug, or are watching someone who is.
>       
> http://bugs.kde.org/show_bug.cgi?id=71099      
> 
> 
> 
> 
> ------- Additional Comments From jens.dagerbo swipnet se  
> 2004-05-12 18:56 -------
> Could you explain exactly what package and what part of that 
> package you parse?
> 
> I just tried the src/xerces directory of 
> xerces-c-current.tar.gz and while I have yet to make it 
> complete anything (I think due to that namespace macro) it 
> doesn't crash either.
> 

Comment 5 Jens Dagerbo 2004-05-16 20:33:50 UTC
Ooops!

I installed xerces-c and parsed the include dir.. now I get it. The parser simply doesn't find any headers at all and the wizard finishes immediately and sits waiting for you to press 'Finish'. 

The real problem is that the head file mask doesn't include .hpp which xerces-c uses. I think what threw everyone looking at this report was the use of words like "hangs" and "blocks". I expected the program to be frozen.

I'll make a simple fix to it in a few minutes. A good fix (I'm not sure how it should look. Probably we should make the filemask list editable.) will have to wait.

A workaround is to use the commandline app "r++" to create the pcs file.

Like so: "r++ xerces-c -r /usr/include/xerces-c"
Comment 6 Jens Dagerbo 2004-05-16 20:39:28 UTC
CVS commit by dagerbo: 

Make the importer acknowledge more header suffixes than .h

CCMAIL: 71099-done@bugs.kde.org


  M +1 -1      kdevcustomimporter.cpp   1.3


--- kdevelop/languages/cpp/pcsimporter/customimporter/kdevcustomimporter.cpp  #1.2:1.3
@@ -41,5 +41,5 @@ QStringList KDevCustomImporter::fileList
     if (!dir.exists())
         return QStringList();
-    QStringList lst = dir.entryList( "*.h" );
+    QStringList lst = dir.entryList( "*.h;*.H;*.hh;*.hxx;*.hpp;*.tlh" );
     QStringList fileList;
     for( QStringList::Iterator it=lst.begin(); it!=lst.end(); ++it )


Comment 7 Jens Dagerbo 2004-05-16 20:41:27 UTC
CVS commit by dagerbo: 

BACKPORT

Make the importer acknowledge more header suffixes than .h

CCMAIL: 71099@bugs.kde.org


  M +1 -1      kdevcustomimporter.cpp   1.2.2.1


--- kdevelop/languages/cpp/pcsimporter/customimporter/kdevcustomimporter.cpp  #1.2:1.2.2.1
@@ -41,5 +41,5 @@ QStringList KDevCustomImporter::fileList
     if (!dir.exists())
         return QStringList();
-    QStringList lst = dir.entryList( "*.h" );
+    QStringList lst = dir.entryList( "*.h;*.H;*.hh;*.hxx;*.hpp;*.tlh" );
     QStringList fileList;
     for( QStringList::Iterator it=lst.begin(); it!=lst.end(); ++it )