You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.6 KiB
46 lines
1.6 KiB
12 years ago
|
KeePass looks for some resources (XSL files) in the executable directory,
|
||
|
however under UNIX system this not a good idea, so we look into the
|
||
|
CommonApplicationData SpecialFolder, which usually maps to "/usr/share/".
|
||
|
So the final search path should be "/usr/share/KeePass/XSL/".
|
||
|
|
||
|
diff --git a/KeePass/Forms/AboutForm.cs b/KeePass/Forms/AboutForm.cs
|
||
|
index 8a04c87..6083c00 100644
|
||
|
--- a/KeePass/Forms/AboutForm.cs
|
||
|
+++ b/KeePass/Forms/AboutForm.cs
|
||
|
@@ -31,9 +31,11 @@ using KeePass.UI;
|
||
|
using KeePass.Resources;
|
||
|
using KeePass.Util;
|
||
|
using KeePass.DataExchange;
|
||
|
+using KeePass.Native;
|
||
|
|
||
|
using KeePassLib;
|
||
|
using KeePassLib.Utility;
|
||
|
+using KeePassLib.Native;
|
||
|
|
||
|
namespace KeePass.Forms
|
||
|
{
|
||
|
@@ -92,8 +94,21 @@ namespace KeePass.Forms
|
||
|
m_lvComponents.Items.Add(lvi);
|
||
|
|
||
|
lvi = new ListViewItem(KPRes.XslStylesheetsKdbx);
|
||
|
- string strPath = WinUtil.GetExecutable();
|
||
|
- strPath = UrlUtil.GetFileDirectory(strPath, true, false);
|
||
|
+
|
||
|
+ string strPath;
|
||
|
+ if (NativeLib.IsUnix())
|
||
|
+ {
|
||
|
+ strPath = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
|
||
|
+ strPath = UrlUtil.EnsureTerminatingSeparator(strPath, false);
|
||
|
+ strPath += PwDefs.ShortProductName.ToLower();
|
||
|
+ strPath = UrlUtil.EnsureTerminatingSeparator(strPath, false);
|
||
|
+ }
|
||
|
+ else
|
||
|
+ {
|
||
|
+ strPath = WinUtil.GetExecutable();
|
||
|
+ strPath = UrlUtil.GetFileDirectory(strPath, true, false);
|
||
|
+ }
|
||
|
+
|
||
|
strPath += AppDefs.XslFilesDir;
|
||
|
strPath = UrlUtil.EnsureTerminatingSeparator(strPath, false);
|
||
|
bool bInstalled = File.Exists(strPath + AppDefs.XslFileHtmlLite);
|