Implement PathGetShortPathA/W and change its prototype to match the

documentation on MSDN.
This commit is contained in:
Rolf Kalbermatter 2004-01-21 23:51:57 +00:00 committed by Alexandre Julliard
parent 9d78f6783f
commit 7af8b13f11
3 changed files with 26 additions and 11 deletions

View File

@ -236,29 +236,41 @@ void WINAPI PathRemoveExtensionAW(LPVOID lpszPath)
/************************************************************************* /*************************************************************************
* PathGetShortPathA [internal] * PathGetShortPathA [internal]
*/ */
LPSTR WINAPI PathGetShortPathA(LPSTR lpszPath) static void PathGetShortPathA(LPSTR pszPath)
{ {
FIXME("%s stub\n", lpszPath); CHAR path[MAX_PATH];
return NULL;
TRACE("%s\n", pszPath);
if (GetShortPathNameA(pszPath, path, MAX_PATH))
{
lstrcpyA(pszPath, path);
}
} }
/************************************************************************* /*************************************************************************
* PathGetShortPathW [internal] * PathGetShortPathW [internal]
*/ */
LPWSTR WINAPI PathGetShortPathW(LPWSTR lpszPath) static void PathGetShortPathW(LPWSTR pszPath)
{ {
FIXME("%s stub\n", debugstr_w(lpszPath)); WCHAR path[MAX_PATH];
return NULL;
TRACE("%s\n", debugstr_w(pszPath));
if (GetShortPathNameW(pszPath, path, MAX_PATH))
{
lstrcpyW(pszPath, path);
}
} }
/************************************************************************* /*************************************************************************
* PathGetShortPath [SHELL32.92] * PathGetShortPath [SHELL32.92]
*/ */
LPVOID WINAPI PathGetShortPathAW(LPVOID lpszPath) VOID WINAPI PathGetShortPathAW(LPVOID pszPath)
{ {
if(SHELL_OsIsUnicode()) if(SHELL_OsIsUnicode())
return PathGetShortPathW(lpszPath); PathGetShortPathW(pszPath);
return PathGetShortPathA(lpszPath); PathGetShortPathA(pszPath);
} }
/************************************************************************* /*************************************************************************

View File

@ -544,8 +544,6 @@ LPVOID WINAPI PathGetArgsAW(LPVOID lpszPath);
BOOL WINAPI PathRemoveFileSpecAW(LPVOID lpszPath); BOOL WINAPI PathRemoveFileSpecAW(LPVOID lpszPath);
LPVOID WINAPI PathGetShortPathAW(LPVOID lpszPath);
void WINAPI PathRemoveBlanksAW(LPVOID lpszPath); void WINAPI PathRemoveBlanksAW(LPVOID lpszPath);
VOID WINAPI PathQuoteSpacesAW(LPVOID path); VOID WINAPI PathQuoteSpacesAW(LPVOID path);

View File

@ -841,6 +841,11 @@ typedef struct _FILEGROUPDESCRIPTORW {
DECL_WINELIB_TYPE_AW(FILEGROUPDESCRIPTOR) DECL_WINELIB_TYPE_AW(FILEGROUPDESCRIPTOR)
DECL_WINELIB_TYPE_AW(LPFILEGROUPDESCRIPTOR) DECL_WINELIB_TYPE_AW(LPFILEGROUPDESCRIPTOR)
/****************************************************************************
* Path Manipulation Routines
*/
VOID WINAPI PathGetShortPath(LPWSTR pszPath);
#include <poppack.h> #include <poppack.h>
/***************************************************************************** /*****************************************************************************