From 229eced1aeda63f684c2eef02c34cdef15e21c15 Mon Sep 17 00:00:00 2001 From: "METANEOCORTEX\\Kotti" Date: Wed, 1 Dec 2021 15:33:15 +0100 Subject: [PATCH] +fix: Add to Favorites: keep base-filename + extension --- src/Dialogs.c | 1 + src/PathLib.c | 10 +++++----- src/PathLib.h | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/Dialogs.c b/src/Dialogs.c index 389360891..6d03127ab 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -2123,6 +2123,7 @@ bool AddToFavDlg(HWND hwnd, const HPATHL hTargetPth) AddToFavDlgProc, (LPARAM)szDisplayName); if (iResult == IDOK) { + StringCchCat(szDisplayName, COUNTOF(szDisplayName), L".lnk"); if (!Path_CreateFavLnk(szDisplayName, hTargetPth, Settings.FavoritesDir)) { InfoBoxLng(MB_ICONWARNING,NULL,IDS_MUI_FAV_FAILURE); return false; diff --git a/src/PathLib.c b/src/PathLib.c index 949c3dd46..437f38e70 100644 --- a/src/PathLib.c +++ b/src/PathLib.c @@ -739,8 +739,8 @@ bool PTHAPI Path_Append(HPATHL hpth_in_out, LPCWSTR more) return true; } - LPWSTR const wbuf = StrgWriteAccessBuf(hstr_io, hstr_len + hmore_len + wcslen(PATHLONG_PREFIX) + 2); - size_t const cch = StrgGetAllocLength(hstr_io); + LPWSTR const wbuf = StrgWriteAccessBuf(hstr_io, hstr_len + hmore_len + wcslen(PATHLONG_PREFIX) + 2); + size_t const cch = StrgGetAllocLength(hstr_io); // append directory separator if (hstr_len > 0) { @@ -1524,16 +1524,16 @@ bool PTHAPI Path_IsLnkToDirectory(const HPATHL hlnk_pth, HPATHL hpth_out) // Path_CreateFavLnk() // Create a Notepad3 favorites link // -bool PTHAPI Path_CreateFavLnk(LPCWSTR lpszDisplayName, const HPATHL hTargetPth, const HPATHL hDirPth) +bool PTHAPI Path_CreateFavLnk(LPCWSTR lpszLinkName, const HPATHL hTargetPth, const HPATHL hDirPth) { - if (StrIsEmptyW(lpszDisplayName)) { + if (StrIsEmptyW(lpszLinkName)) { return true; } bool bSucceeded = false; HPATHL hlnk_pth = Path_Copy(hDirPth); - Path_Append(hlnk_pth, lpszDisplayName); + Path_Append(hlnk_pth, lpszLinkName); Path_RenameExtension(hlnk_pth, L".lnk"); if (!Path_IsExistingFile(hlnk_pth)) { diff --git a/src/PathLib.h b/src/PathLib.h index 24e0ee091..7b133bfe1 100644 --- a/src/PathLib.h +++ b/src/PathLib.h @@ -124,7 +124,7 @@ void PTHAPI Path_GetDisplayName(LPWSTR lpszDisplayName, const DWORD c bool PTHAPI Path_GetLnkPath(const HPATHL hLnkFilePth, HPATHL hResPath_out); bool PTHAPI Path_IsLnkFile(const HPATHL hpth); bool PTHAPI Path_IsLnkToDirectory(const HPATHL hlnk_pth, HPATHL hpth_out); -bool PTHAPI Path_CreateFavLnk(LPCWSTR lpszDisplayName, const HPATHL hTargetPth, const HPATHL hDirPth); +bool PTHAPI Path_CreateFavLnk(LPCWSTR lpszLinkName, const HPATHL hTargetPth, const HPATHL hDirPth); bool PTHAPI Path_CreateDeskLnk(const HPATHL hDocumentPath, LPCWSTR pszDescription); bool PTHAPI Path_BrowseDirectory(HWND hwndParent, LPCWSTR lpszTitle, HPATHL hpth_in_out, const HPATHL hbase, bool bNewDialogStyle); bool PTHAPI Path_CanonicalizeEx(HPATHL hpth_in_out);