File indexing completed on 2024-06-23 05:32:15

0001 /*
0002     SPDX-FileCopyrightText: 2022 Fushan Wen <qydwhotmail@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <QFileInfo>
0010 
0011 static QFileInfo findSymlinkTarget(const QFileInfo &info)
0012 {
0013     if (!info.isSymLink()) {
0014         return info;
0015     }
0016 
0017     int count = 0;
0018     QFileInfo target(info.symLinkTarget());
0019 
0020     while (count < 10 && target.isSymLink()) {
0021         target = QFileInfo(target.symLinkTarget());
0022         count += 1;
0023     }
0024 
0025     if (QFileInfo(target).isSymLink()) {
0026         return info;
0027     }
0028 
0029     return target;
0030 }