Fix QStandardPaths values on Apple Platforms containing URL encoding
This corrects an issue where the file system paths returned for some QStandardPaths values on Apple Platforms would be URL encoded, for example having %20 instead of an actual space character. Task-number: QTBUG-59389 Change-Id: I771a44eb20b756842c324ac6fc9bdc475ce84826 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>bb10
parent
b52b509ae4
commit
c0da37a806
|
|
@ -204,13 +204,14 @@ QStringList QStandardPaths::standardLocations(StandardLocation type)
|
|||
CFBundleRef mainBundle = CFBundleGetMainBundle();
|
||||
if (mainBundle) {
|
||||
CFURLRef bundleUrl = CFBundleCopyBundleURL(mainBundle);
|
||||
CFStringRef cfBundlePath = CFURLCopyPath(bundleUrl);
|
||||
CFStringRef cfBundlePath = CFURLCopyFileSystemPath(bundleUrl, kCFURLPOSIXPathStyle);
|
||||
QString bundlePath = QString::fromCFString(cfBundlePath);
|
||||
CFRelease(cfBundlePath);
|
||||
CFRelease(bundleUrl);
|
||||
|
||||
CFURLRef resourcesUrl = CFBundleCopyResourcesDirectoryURL(mainBundle);
|
||||
CFStringRef cfResourcesPath = CFURLCopyPath(resourcesUrl);
|
||||
CFStringRef cfResourcesPath = CFURLCopyFileSystemPath(resourcesUrl,
|
||||
kCFURLPOSIXPathStyle);
|
||||
QString resourcesPath = QString::fromCFString(cfResourcesPath);
|
||||
CFRelease(cfResourcesPath);
|
||||
CFRelease(resourcesUrl);
|
||||
|
|
|
|||
Loading…
Reference in New Issue