[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Fwd: meinproc doesn't correct work with --srcdir option
From:       Matthias Kalle Dalheimer <kalle () klaralvdalens-datakonsult ! se>
Date:       2003-07-25 8:04:24
[Download RAW message or body]

Who is taking care of this?

Kalle

-- 
Matthias Kalle Dalheimer
President & CEO
Klarälvdalens Datakonsult AB
Platform-independent software solutions

["forwarded message" (message/rfc822)]



meinproc doesn't correct work with --srcdir option

In file meinproc.cpp function
void fillInstance(KInstance &)
call before initialization of variable SRCDIR

My bugfix of this problem is here

["meinproc.patch" (text/x-diff)]

diff -U 3 -dHrNa a/kdoctools/meinproc.cpp b/kdoctools/meinproc.cpp
--- a/kdoctools/meinproc.cpp	2003-07-22 12:06:50.000000000 +0300
+++ b/kdoctools/meinproc.cpp	2003-07-25 05:41:37.000000000 +0300
@@ -27,7 +27,6 @@
 #include <kprocess.h>
 
 extern int xmlLoadExtDtdDefaultValue;
-extern QString *SRCDIR;
 
 class MyPair {
 public:
@@ -100,10 +99,6 @@
     KInstance ins("meinproc");
     KGlobal::locale();
 
-    fillInstance(ins);
-
-    SRCDIR=new QString;
-
     KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
     if ( args->count() != 1 ) {
         args->usage();
@@ -111,6 +106,12 @@
     }
 
     LIBXML_TEST_VERSION
+    
+    QString srcdir;
+    if ( args->isSet( "srcdir" ) ) {
+        srcdir = args->getOption("srcdir") ;
+    }
+    fillInstance(ins, srcdir);
 
     QString checkFilename = QFile::decodeName(args->arg( 0 ));
     QFileInfo checkFile(checkFilename);
@@ -130,9 +131,6 @@
         return ( 2 );
     }
 
-    if ( args->isSet( "srcdir" ) ) {
-        *SRCDIR = args->getOption("srcdir") ;
-    }
     if ( args->isSet( "check" ) ) {
         char pwd_buffer[250];
         QFileInfo file( QFile::decodeName(args->arg( 0 )) );
diff -U 3 -dHrNa a/kdoctools/xslt.cpp b/kdoctools/xslt.cpp
--- a/kdoctools/xslt.cpp	2003-07-17 05:44:13.000000000 +0300
+++ b/kdoctools/xslt.cpp	2003-07-25 05:13:38.000000000 +0300
@@ -26,8 +26,6 @@
 #include <bzip2/kbzip2filter.h>
 #include <klibloader.h>
 
-QString *SRCDIR=0L;
-
 #if !defined( SIMPLE_XSLT )
 extern HelpProtocol *slave;
 #define INFO( x ) if (slave) slave->infoMessage(x);
@@ -268,17 +266,17 @@
     return filedata;
 }
 
-void fillInstance(KInstance &ins) {
+void fillInstance(KInstance &ins, const QString &srcdir) {
     QString catalogs;
 
-    if ( !SRCDIR || SRCDIR->isEmpty() ) {
+    if ( srcdir.isEmpty() ) {
         catalogs += ins.dirs()->findResource("data", \
"ksgmltools2/customization/catalog");  catalogs += ':';
         catalogs += ins.dirs()->findResource("data", \
                "ksgmltools2/docbook/xml-dtd-4.2/docbook.cat");
         ins.dirs()->addResourceType("dtd", KStandardDirs::kde_default("data") + \
"ksgmltools2");  } else {
-        catalogs += (*SRCDIR) +"/customization/catalog:" + (*SRCDIR) + \
                "/docbook/xml-dtd-4.2/docbook.cat";
-        ins.dirs()->addResourceDir("dtd", (*SRCDIR));
+        catalogs += srcdir +"/customization/catalog:" + srcdir + \
"/docbook/xml-dtd-4.2/docbook.cat"; +        ins.dirs()->addResourceDir("dtd", \
srcdir);  }
 
     xmlLoadCatalogs(catalogs.latin1());
diff -U 3 -dHrNa a/kdoctools/xslt.h b/kdoctools/xslt.h
--- a/kdoctools/xslt.h	2003-07-17 05:44:13.000000000 +0300
+++ b/kdoctools/xslt.h	2003-07-25 05:18:15.000000000 +0300
@@ -6,14 +6,13 @@
 QString transform(const QString &file, const QString& stylesheet);
 QString transform(xmlParserCtxtPtr ctxt, const QString &tss);
 QString splitOut(const QString &parsed, int index);
-void fillInstance(KInstance &ins);
+void fillInstance(KInstance &ins, const QString &srcdir = QString::null);
 bool saveToCache( const QString &contents, const QString &filename );
 QString lookForCache( const QString &filename );
 QCString fromUnicode( const QString &data );
 void replaceCharsetHeader( QString &output );
 
 extern bool warnings_exist;
-extern QString *SRCDIR;
 
 /**
  * Compares two files and returns true if @param newer exists and is newer than



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic