--nextPart3030231.IfZb4BdeDk Content-Type: multipart/mixed; boundary="Boundary-01=_65ZaHMfqbtAJgVC" Content-Transfer-Encoding: 7bit Content-Disposition: inline --Boundary-01=_65ZaHMfqbtAJgVC Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Tuesday 18 December 2007, Alexander Neundorf wrote: > On Tuesday 18 December 2007, Ingo Kl=F6cker wrote: > > FWIW, below you'll find the function that parses the result of > > getenv("SGML_CATALOG_FILES"). The code is pretty straightforward > > and it's obvious that nobody thought about spaces in a catalog's > > path. > > Can you file a bug report for libxml ? Instead of doing this I have converted the SGML catalogs in kdoctools to=20 XML catalogs and made meinproc write the catalog paths (encoded as file=20 URLs) to the environment variable XML_CATALOG_FILES. Now kdelibs builds even if the source dir contains spaces. Is it okay to commit this patch and to svn add the new XML catalogs (see=20 attached tar ball)? Regards, Ingo --Boundary-01=_65ZaHMfqbtAJgVC Content-Type: text/x-diff; charset="iso-8859-1"; name="meinproc.diff" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="meinproc.diff" Index: meinproc.cpp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =2D-- meinproc.cpp (revision 750721) +++ meinproc.cpp (working copy) @@ -32,6 +32,7 @@ #include #include #include +#include =20 class MyPair { public: @@ -135,12 +136,12 @@ QString pwd_buffer =3D QDir::currentPath(); QFileInfo file( args->arg( 0 ) ); =20 =2D QString catalogs; =2D catalogs +=3D KStandardDirs::locate( "dtd", "customization/catal= og" ); + QByteArray catalogs; + catalogs +=3D QUrl::fromLocalFile( KStandardDirs::locate( "dtd", "= customization/catalog.xml" ) ).toEncoded(); catalogs +=3D ' '; =2D catalogs +=3D KStandardDirs::locate( "dtd", "docbook/xml-dtd-4.1= =2E2/docbook.cat" ); + catalogs +=3D QUrl::fromLocalFile( KStandardDirs::locate( "dtd", "= docbook/xml-dtd-4.1.2/catalog.xml" ) ).toEncoded(); =20 =2D setenv( "SGML_CATALOG_FILES", QFile::encodeName( catalogs ).cons= tData(), 1); + setenv( "XML_CATALOG_FILES", catalogs.constData(), 1 ); QString exe; #if defined( XMLLINT ) exe =3D XMLLINT; @@ -153,7 +154,7 @@ if ( QFileInfo( exe ).isExecutable() ) { QDir::setCurrent( file.absolutePath() ); QString cmd =3D exe; =2D cmd +=3D " --catalogs --valid --noout "; + cmd +=3D " --valid --noout "; #ifdef Q_OS_WIN cmd +=3D file.fileName(); #else --Boundary-01=_65ZaHMfqbtAJgVC Content-Type: application/x-tbz; name="xmlcatalogs.tar.bz2" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="xmlcatalogs.tar.bz2" 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 kKkBqwM= --Boundary-01=_65ZaHMfqbtAJgVC-- --nextPart3030231.IfZb4BdeDk Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQBHaZ5+GnR+RTDgudgRAknaAJ9f1EqcVYmsC01fKK1V2lOEnvKUnQCeMyf2 xOF43XtgGLaQ2V8PhnRNE10= =XrGh -----END PGP SIGNATURE----- --nextPart3030231.IfZb4BdeDk--