[weasel-commit] Source: doxygen=1.5.8-1

  • From: rbuilder@xxxxxxxxx
  • To: weasel-commit@xxxxxxxxxxxxx
  • Date: Sun, 06 Jun 2010 16:47:55 -0400

================================
doxygen:source=1.5.8-1
cvc rdiff doxygen -1 /weasel.rpath.org@wgl:3-devel/1.5.8-1
================================
1.5.8-1 Filip Brcic (brcha@xxxxxxxxxxxx) Sun Jun  6 16:46:52 2010
    doxygen 1.5.8

doxygen-1.5-legacy-patches.diff: new
--- /dev/null
+++ doxygen-1.5-legacy-patches.diff
@@ -0,0 +203 @@
+--- qtools/qtextcodec.cpp.orig 2003-12-14 14:00:57.000000000 -0800
++++ qtools/qtextcodec.cpp      2005-05-29 19:13:17.000000000 -0700
+@@ -1321,7 +1321,7 @@
+ 
+ 
+ 
+-#ifndef QT_NO_CODECS
++// #ifndef QT_NO_CODECS
+ 
+ class QSimpleTextCodec: public QTextCodec
+ {
+@@ -1948,7 +1948,7 @@
+ }
+ 
+ 
+-#endif // QT_NO_CODECS
++// #endif // QT_NO_CODECS
+ 
+ class QLatin1Codec: public QTextCodec
+ {
+@@ -2048,12 +2048,13 @@
+ {
+     (void)new QLatin1Codec;
+ 
+-#ifndef QT_NO_CODECS
++
+     int i = 0;
+     do {
+         (void)new QSimpleTextCodec( i );
+     } while( unicodevalues[i++].mib != LAST_MIB );
+ 
++#ifndef QT_NO_CODECS
+     (void)new QEucJpCodec;
+     (void)new QSjisCodec;
+     (void)new QJisCodec;
+--- doxygen-1.4.6.orig/debian/patches/system-libpng.dpatch
++++ doxygen-1.4.6/debian/patches/system-libpng.dpatch
+@@ -0,0 +1,121 @@
++#! /bin/sh -e
++
++# DP: Use the system libpng library
++
++dir=
++if [ $# -eq 3 -a "$2" = '-d' ]; then
++    pdir="-d $3"
++    dir="$3/"
++elif [ $# -ne 1 ]; then
++    echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++    exit 1
++fi
++case "$1" in
++    -patch)
++        patch $pdir -f --no-backup-if-mismatch -p1 < $0
++        ;;
++    -unpatch)
++        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
++        ;;
++    *)
++      echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++        exit 1
++esac
++exit 0
++
++diff -u ./src/pngenc.cpp.orig ./src/pngenc.cpp
++--- ./src/pngenc.cpp.orig     2004-01-06 04:40:25.000000000 +0100
+++++ ./src/pngenc.cpp  2004-09-21 09:04:40.000000000 +0200
++@@ -25,7 +25,7 @@
++ #endif
++ 
++ #define ALL_STATIC
++-#include <../libpng/png.h>
+++#include <png.h>
++ #include <stdio.h>
++ #include <stdlib.h>
++ #include <string.h>
++diff -u ./Makefile.in.orig ./Makefile.in
++--- ./Makefile.in.orig        2003-11-13 04:40:21.000000000 +0100
+++++ ./Makefile.in     2004-09-21 09:04:40.000000000 +0200
++@@ -7,7 +7,6 @@
++      cd doc ; $(MAKE) clean
++      cd qtools ; $(MAKE) clean
++      cd src ; $(MAKE) clean
++-     cd libpng ; $(MAKE) clean
++      cd libmd5 ; $(MAKE) clean
++      cd addon/doxywizard ; $(MAKE) clean
++      cd addon/doxmlparser/src ; $(MAKE) clean
++@@ -18,7 +17,6 @@
++ 
++ distclean: clean
++      cd src ; $(MAKE) distclean
++-     cd libpng ; $(MAKE) distclean
++      cd libmd5 ; $(MAKE) distclean
++      cd addon/doxywizard ; $(MAKE) distclean
++      cd addon/doxmlparser/src ; $(MAKE) distclean
++@@ -31,11 +29,10 @@
++      -rm -f objects/*.o
++      -rm -f src/Makefile.doxygen src/Makefile.libdoxygen 
++      -rm -f src/Makefile.doxytag src/Makefile.libdoxycfg
++-     -rm -f libpng/Makefile.libpng
++      -rm -f libmd5/Makefile.libmd5
++      -rm -f Makefile qtools/Makefile src/Makefile examples/Makefile 
doc/Makefile 
++      -rm -f .makeconfig .tmakeconfig
++-     -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro 
qtools/qtools.pro src/libdoxycfg.pro libpng/libpng.pro libmd5/libmd5.pro
+++     -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro 
qtools/qtools.pro src/libdoxycfg.pro libmd5/libmd5.pro
++      -rm -f src/version.cpp
++      -rm -r addon/doxywizard/Makefile
++      -rm -f addon/doxywizard/Makefile.doxywizard
++diff -u ./configure.orig ./configure
++--- ./configure.orig  2004-09-14 04:40:12.000000000 +0200
+++++ ./configure       2004-09-21 09:09:06.000000000 +0200
++@@ -457,7 +457,7 @@
++ EOF
++ fi
++ 
++-f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in 
examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in 
addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in 
addon/doxmlparser/examples/metrics/Makefile.in libpng/Makefile.in 
libmd5/Makefile.in"
+++f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in 
examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in 
addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in 
addon/doxmlparser/examples/metrics/Makefile.in libmd5/Makefile.in"
++ 
++ for i in $f_inmakefiles ; do
++      SRC=$i
++@@ -474,7 +474,6 @@
++        echo "" >> $DST
++        echo "all: src/version.cpp " >> $DST
++        echo "        \$(MAKE) -C qtools" >> $DST
++-       echo "        \$(MAKE) -C libpng" >> $DST
++        echo "        \$(MAKE) -C libmd5" >> $DST
++        echo "        \$(MAKE) -C src" >> $DST
++        if test $f_wizard = YES; then
++@@ -491,7 +490,7 @@
++      echo "  Created $DST from $SRC..."
++ done
++ 
++-f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in 
src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in 
addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in 
addon/doxmlparser/test/xmlparse.pro.in 
addon/doxmlparser/examples/metrics/metrics.pro.in libpng/libpng.pro.in 
libmd5/libmd5.pro.in" 
+++f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in 
src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in 
addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in 
addon/doxmlparser/test/xmlparse.pro.in 
addon/doxmlparser/examples/metrics/metrics.pro.in libmd5/libmd5.pro.in" 
++ 
++ for i in $f_inprofiles ; do
++      SRC=$i
++diff -u ./src/doxygen.pro.in.orig ./src/doxygen.pro.in
++--- ./src/doxygen.pro.in.orig 2004-05-18 04:40:13.000000000 +0200
+++++ ./src/doxygen.pro.in      2004-09-21 09:58:06.000000000 +0200
++@@ -28,7 +28,7 @@
++ win32:TMAKE_CXXFLAGS       += -DQT_NODLL
++ win32-g++:LIBS             = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng 
-lmd5
++ win32-g++:TMAKE_CXXFLAGS   += -fno-exceptions -fno-rtti
++-INCLUDEPATH                += ../qtools ../libpng ../libmd5 .
+++INCLUDEPATH                += ../qtools ../libmd5 .
++ #win32-g++:INCLUDEPATH      -= ../libpng
++ DESTDIR                    =  ../bin
++ TARGET                     =  doxygen
++diff -u ./src/libdoxygen.pro.in.orig ./src/libdoxygen.pro.in
++--- ./src/libdoxygen.pro.in.orig      2004-08-25 04:40:18.000000000 +0200
+++++ ./src/libdoxygen.pro.in   2004-09-21 09:58:55.000000000 +0200
++@@ -189,7 +189,6 @@
++ win32-msvc:TMAKE_CXXFLAGS  += -Zm200
++ win32-g++:TMAKE_CXXFLAGS   += -fno-exceptions -fno-rtti
++ INCLUDEPATH                += ../qtools
++-INCLUDEPATH                += ../libpng
++ INCLUDEPATH                += ../libmd5
++ win32:INCLUDEPATH          += .
++ win32-g++:INCLUDEPATH      = ../qtools /usr/include/libpng12 ../libmd5
+--- doxygen-1.4.6.orig/debian/patches/qstring-gcc40.dpatch
++++ doxygen-1.4.6/debian/patches/qstring-gcc40.dpatch
+@@ -0,0 +1,41 @@
++#! /bin/sh -e
++
++# DP: Remove unused code that does not build with gcc 4.0 (#338099).
++
++dir=
++if [ $# -eq 3 -a "$2" = '-d' ]; then
++    pdir="-d $3"
++    dir="$3/"
++elif [ $# -ne 1 ]; then
++    echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++    exit 1
++fi
++case "$1" in
++    -patch)
++        patch $pdir -f --no-backup-if-mismatch -p0 < $0
++        ;;
++    -unpatch)
++        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
++        ;;
++    *)
++      echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
++        exit 1
++esac
++exit 0
++
++--- qtools/qstring.h.orig     2004-12-01 19:26:16.000000000 +0000
+++++ qtools/qstring.h  2005-12-04 20:09:01.000000000 +0000
++@@ -163,8 +163,13 @@
++     bool isLetterOrNumber() const;
++     bool isDigit() const;
++ 
+++    // the non-const ::cell and ::row cannot be compiled with gcc 4.0 on ARM,
+++    // so they have been removed; the methods are not needed for doxygen
+++#if 0
++     uchar& cell() { return cl; }
++     uchar& row() { return rw; }
+++#endif
+++
++     uchar cell() const { return cl; }
++     uchar row() const { return rw; }
++ 

doxygen-1.5.8.src.tar.gz: new
doxygen.recipe: new
--- /dev/null
+++ doxygen.recipe
@@ -0,0 +112 @@
+#
+# Copyright (c) 2010 Weasel GNU/Linux [Filip Brcic (brcha@xxxxxxxxxxxx)]
+# Distributed under the terms of the GNU General Public License v3
+#
+
+class Doxygen(AutoPackageRecipe):
+    name = 'doxygen'
+    version = '1.5.8'
+
+    buildRequires = [
+        'qt4-gui:devellib', 'qt4:devel', 'python:devel',
+        'libpng:devel', 'freetype:devel', 'gcc-c++:runtime',
+        'libstdc++:devel', 'flex:runtime', 'gettext:runtime',
+        'gettext:devel', 'bison:runtime', 'm4:runtime',
+        'desktop-file-utils:runtime',
+        ]
+
+    runtimeRequires = [
+        'texlive-core:runtime', 'texlive-genericrecommended:data',
+        'texlive-fontsrecommended:data',
+        'texlive-latexrecommended:runtime', 'texlive-fontsextra:data',
+        'texlive-latexextra:runtime', 'ghostscript:runtime',
+        'graphviz:runtime',
+        ]
+    buildRequires.extend(runtimeRequires)
+
+    shortDesc  = 'Source code documentation generator tool'
+    longDesc   = """
+Doxygen is a documentation system for C++, C, Java, Objective-C,
+Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and
+to some extent D.
+"""
+    url        = 'http://www.doxygen.org/'
+    licenses   = [ 'GPL-2' ]
+    categories = [ 'Applications/Documentation' ]
+
+    def unpack(r):
+        r.addArchive('ftp://ftp.stack.nl/pub/users/dimitri/'
+                     '%(name)s-%(version)s.src.tar.gz')
+
+        # use CFLAGS, CXXFLAGS, LDFLAGS
+        r.Replace(('^(TMAKE_CFLAGS_RELEASE\\t*)= .*$', '\\1= $(ECFLAGS)'),
+                  ('^(TMAKE_CXXFLAGS_RELEASE\\t*)= .*$', '\\1= $(ECXXFLAGS)'),
+                  ('^(TMAKE_LFLAGS_RELEASE\\s*)=.*$', '\\1= $(ELDFLAGS)'),
+                  'tmake/lib/linux-g++/tmake.conf')
+
+        # Consolidate patches, apply FreeBSD configure patch, codepage patch,
+        # qtools stuff, and patches for bugs 129142, 121770, and 129560.
+        r.addPatch('doxygen-1.5-legacy-patches.diff')
+
+        # backport fix for bug #266693
+        r.addPatch('doxygen-1.5.8-kdedocs.patch')
+
+        # remove internal libpng
+        r.addPatch('doxygen-1.5-system-libpng.patch')
+
+        # fix final DESTDIR issue (Replace isn't working for some reason)
+        r.Run("""
+sed -i.orig -e "s:\$(INSTALL):\$(DESTDIR)/\$(INSTALL):g" 
addon/doxywizard/Makefile.in
+""")
+
+        # Replace -O3 with -O2 if present
+        r.macros.optflags = r.macros.optflags.replace('-O3', '-O2')
+
+    def configure(r):
+        r.Environment('ECFLAGS', '%(cflags)s')
+        r.Environment('ECXXFLAGS', '%(cxxflags)s %(cflags)s')
+        r.Environment('ELDFLAGS', '%(ldflags)s')
+        r.Environment('QTDIR', '%(prefix)s')
+
+        r.ManualConfigure(
+            ' --prefix %(prefix)s'
+            ' --with-doxywizard'
+            )
+
+    def make(r):
+        r.Make('all')
+
+        if Use.builddocs:
+            # generate html and pdf documents
+            r.Make('pdf')
+
+    def makeinstall(r):
+        r.MakeInstall(
+            ' MAN1DIR=share/man/man1'
+            )
+
+        r.addSource('doxywizard.png',
+                    dest='%(datadir)s/pixmaps/')
+
+        #make_desktop_entry doxywizard "DoxyWizard ${PV}" \
+        #                   "doxywizard.png" "Application;Development"
+        r.macros.shortDesc = r.shortDesc
+        r.Create('%(datadir)s/applications/doxywizard-%(name)s.desktop', 
contents="""
+[Desktop Entry]
+Name=DoxyWizard %(version)s
+Type=Application
+Comment=%(shortDesc)s
+Exec=doxywizard
+TryExec=doxywizard
+Icon=doxywizard
+Categories=Application;Development
+""", macros=True)
+
+        r.Doc('INSTALL', 'LANGUAGE.HOWTO', 'README')
+
+        if Use.builddocs:
+            r.Doc('html')
+            r.Doc('latex/doxygen_manual.pdf')
+
+        for req in r.runtimeRequires:
+            r.Requires(req, '%(bindir)s/')

doxygen-1.5-system-libpng.patch: new
--- /dev/null
+++ doxygen-1.5-system-libpng.patch
@@ -0,0 +105 @@
+diff -ur doxygen-1.5.1/configure doxygen-fixed/configure
+--- doxygen-1.5.1/configure    2006-11-01 22:52:27.711364356 +0200
++++ doxygen-fixed/configure    2006-11-01 22:54:09.086952924 +0200
+@@ -525,7 +525,7 @@
+ EOF
+ fi
+ 
+-f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in 
examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in 
addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in 
addon/doxmlparser/examples/metrics/Makefile.in libpng/Makefile.in 
libmd5/Makefile.in addon/doxyapp/Makefile.in"
++f_inmakefiles="Makefile.in qtools/Makefile.in src/Makefile.in 
examples/Makefile.in doc/Makefile.in addon/doxywizard/Makefile.in 
addon/doxmlparser/src/Makefile.in addon/doxmlparser/test/Makefile.in 
addon/doxmlparser/examples/metrics/Makefile.in libmd5/Makefile.in 
addon/doxyapp/Makefile.in"
+ 
+ for i in $f_inmakefiles ; do
+      SRC=$i
+@@ -542,7 +542,6 @@
+        echo "" >> $DST
+        echo "all: src/version.cpp " >> $DST
+        echo " \$(MAKE) -C qtools" >> $DST
+-       echo " \$(MAKE) -C libpng" >> $DST
+        echo " \$(MAKE) -C libmd5" >> $DST
+        echo " \$(MAKE) -C src" >> $DST
+        if test $f_wizard = YES; then
+@@ -562,7 +561,7 @@
+      echo "  Created $DST from $SRC..."
+ done
+ 
+-f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in 
src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in 
addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in 
addon/doxmlparser/test/xmlparse.pro.in 
addon/doxmlparser/examples/metrics/metrics.pro.in libpng/libpng.pro.in 
libmd5/libmd5.pro.in addon/doxyapp/doxyapp.pro.in" 
++f_inprofiles="qtools/qtools.pro.in src/libdoxygen.pro.in 
src/libdoxycfg.pro.in src/doxygen.pro.in src/doxytag.pro.in 
addon/doxywizard/doxywizard.pro.in addon/doxmlparser/src/doxmlparser.pro.in 
addon/doxmlparser/test/xmlparse.pro.in 
addon/doxmlparser/examples/metrics/metrics.pro.in libmd5/libmd5.pro.in 
addon/doxyapp/doxyapp.pro.in" 
+ 
+ for i in $f_inprofiles ; do
+      SRC=$i
+diff -ur doxygen-1.5.1/Makefile.in doxygen-fixed/Makefile.in
+--- doxygen-1.5.1/Makefile.in  2006-11-01 22:52:31.257825212 +0200
++++ doxygen-fixed/Makefile.in  2006-11-01 22:53:44.182738940 +0200
+@@ -7,7 +7,6 @@
+       cd doc ; $(MAKE) clean
+       cd qtools ; $(MAKE) clean
+       cd src ; $(MAKE) clean
+-      cd libpng ; $(MAKE) clean
+       cd libmd5 ; $(MAKE) clean
+       cd addon/doxywizard ; $(MAKE) clean
+       cd addon/doxmlparser/src ; $(MAKE) clean
+@@ -18,7 +17,6 @@
+ 
+ distclean: clean
+       cd src ; $(MAKE) distclean
+-      cd libpng ; $(MAKE) distclean
+       cd libmd5 ; $(MAKE) distclean
+       cd addon/doxywizard ; $(MAKE) distclean
+       cd addon/doxmlparser/src ; $(MAKE) distclean
+@@ -32,11 +30,10 @@
+       -rm -f objects/*.o
+       -rm -f src/Makefile.doxygen src/Makefile.libdoxygen 
+       -rm -f src/Makefile.doxytag src/Makefile.libdoxycfg
+-      -rm -f libpng/Makefile.libpng
+       -rm -f libmd5/Makefile.libmd5
+       -rm -f Makefile qtools/Makefile src/Makefile examples/Makefile 
doc/Makefile 
+       -rm -f .makeconfig .tmakeconfig
+-      -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro 
qtools/qtools.pro src/libdoxycfg.pro libpng/libpng.pro libmd5/libmd5.pro
++      -rm -f src/doxygen.pro src/libdoxygen.pro src/doxytag.pro 
qtools/qtools.pro src/libdoxycfg.pro libmd5/libmd5.pro
+       -rm -f src/version.cpp
+       -rm -r addon/doxywizard/Makefile
+       -rm -f addon/doxywizard/Makefile.doxywizard
+@@ -81,7 +78,7 @@
+ pdf: docs
+       cd latex ; $(MAKE)
+ 
+-DISTFILES =  Doxyfile libpng libmd5 addon tmake doc wintools examples bin lib 
objects \
++DISTFILES =  Doxyfile libmd5 addon tmake doc wintools examples bin lib 
objects \
+              qtools src configure configure.bin Makefile.in 
Makefile.win_nmake.in \
+              Makefile.win_make.in INSTALL make.bat LANGUAGE.HOWTO LICENSE 
PLATFORMS \
+              VERSION packages winbuild
+diff -ur doxygen-1.5.1/src/doxygen.pro.in doxygen-fixed/src/doxygen.pro.in
+--- doxygen-1.5.1/src/doxygen.pro.in   2006-11-01 22:52:32.611619404 +0200
++++ doxygen-fixed/src/doxygen.pro.in   2006-11-01 22:54:39.508328172 +0200
+@@ -28,7 +28,7 @@
+ win32:TMAKE_CXXFLAGS       += -DQT_NODLL
+ win32-g++:LIBS             = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
+ win32-g++:TMAKE_CXXFLAGS   += -fno-exceptions -fno-rtti
+-INCLUDEPATH                += ../qtools ../libpng ../libmd5 .
++INCLUDEPATH                += ../qtools ../libmd5 .
+ #win32-g++:INCLUDEPATH      -= ../libpng
+ DESTDIR                    =  ../bin
+ TARGET                     =  doxygen
+diff -ur doxygen-1.5.1/src/libdoxygen.pro.in 
doxygen-fixed/src/libdoxygen.pro.in
+--- doxygen-1.5.1/src/libdoxygen.pro.in        2006-11-01 22:52:33.704453268 
+0200
++++ doxygen-fixed/src/libdoxygen.pro.in        2006-11-01 22:54:50.479660276 
+0200
+@@ -207,7 +207,6 @@
+ win32-g++:TMAKE_CXXFLAGS   += -fno-exceptions -fno-rtti
+ linux-g++:TMAKE_CXXFLAGS    += -fno-exceptions -fno-rtti
+ INCLUDEPATH                += ../qtools
+-INCLUDEPATH                += ../libpng
+ INCLUDEPATH                += ../libmd5
+ win32:INCLUDEPATH          += .
+ win32-g++:INCLUDEPATH      = ../qtools /usr/include/libpng12 ../libmd5
+diff -ur doxygen-1.5.1/src/pngenc.cpp doxygen-fixed/src/pngenc.cpp
+--- doxygen-1.5.1/src/pngenc.cpp       2006-11-01 22:52:34.006407364 +0200
++++ doxygen-fixed/src/pngenc.cpp       2006-11-01 22:53:13.023475868 +0200
+@@ -25,7 +25,7 @@
+ #endif
+ 
+ #define ALL_STATIC
+-#include <../libpng/png.h>
++#include <png.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>

doxywizard.png: new
doxygen-1.5.8-kdedocs.patch: new
--- /dev/null
+++ doxygen-1.5.8-kdedocs.patch
@@ -0,0 +32 @@
+Avoid infinite loop in resolveSymlink.
+Backported from doxygen trunk to 1.5.8.
+Reference: http://bugs.gentoo.org/266693
+2009-04-19 Martin von Gagern
+
+--- trunk/src/doxygen.cpp      2009/01/17 16:16:15     677
++++ trunk/src/doxygen.cpp      2009/01/29 20:13:23     678
+@@ -8617,6 +8617,7 @@
+   QDict<void> nonSymlinks;
+   QDict<void> known;
+   QCString result = path;
++  QCString oldPrefix = "/";
+   do
+   {
+ #ifdef WIN32
+@@ -8637,7 +8638,7 @@
+         QString target = fi.readLink();
+         if (QFileInfo(target).isRelative())
+         {
+-          target = QDir::cleanDirPath(prefix+"/"+target.data());
++          target = QDir::cleanDirPath(oldPrefix+"/"+target.data());
+         }
+         if (sepPos!=-1)
+         {
+@@ -8656,6 +8657,7 @@
+       {
+         nonSymlinks.insert(prefix,(void*)0x8);
+       }
++      oldPrefix = prefix;
+     }
+   }
+   while (sepPos!=-1);


Committed by: brcha

Other related posts: