Changeset 4032 for trunk/src/shell32/pidl.cpp
- Timestamp:
- Aug 18, 2000, 4:01:27 AM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/shell32/pidl.cpp
r3469 r4032 1 /* $Id: pidl.cpp,v 1. 8 2000-05-01 01:33:25phaller Exp $ */1 /* $Id: pidl.cpp,v 1.9 2000-08-18 02:01:17 phaller Exp $ */ 2 2 3 3 /* … … 748 748 return FALSE; 749 749 750 return SHFree(pidl); 750 SHFree(pidl); 751 return TRUE; 751 752 } 752 753 /************************************************************************* … … 755 756 */ 756 757 757 ODINFUNCTION1(DWORD,ILGlobalFree,LPITEMIDLIST, pidl) 758 ODINPROCEDURE1(ILGlobalFree, 759 LPITEMIDLIST, pidl) 758 760 { 759 761 TRACE_(pidl)("%p\n",pidl); 760 762 761 if (!pidl) 762 return FALSE; 763 764 return pCOMCTL32_Free (pidl); 763 if (pidl) 764 pCOMCTL32_Free (pidl); 765 765 } 766 766 /************************************************************************* … … 803 803 */ 804 804 805 ODINFUNCTION1(LPITEMIDLIST,SHSimpleIDListFromPathA,LP STR, lpszPath)805 ODINFUNCTION1(LPITEMIDLIST,SHSimpleIDListFromPathA,LPCSTR, lpszPath) 806 806 { 807 807 LPITEMIDLIST pidl=NULL; … … 828 828 } 829 829 830 ODINFUNCTION1(LPITEMIDLIST,SHSimpleIDListFromPathW,LP WSTR, lpszPath)830 ODINFUNCTION1(LPITEMIDLIST,SHSimpleIDListFromPathW,LPCWSTR, lpszPath) 831 831 { 832 832 char lpszTemp[MAX_PATH]; 833 833 834 WideCharToLocal(lpszTemp, lpszPath, MAX_PATH);834 WideCharToLocal(lpszTemp, (LPWSTR)lpszPath, MAX_PATH); 835 835 836 836 return SHSimpleIDListFromPathA (lpszTemp); 837 837 } 838 838 839 ODINFUNCTION1(LPITEMIDLIST,SHSimpleIDListFromPathAW,LP VOID, lpszPath)839 ODINFUNCTION1(LPITEMIDLIST,SHSimpleIDListFromPathAW,LPCVOID, lpszPath) 840 840 { 841 841 if ( VERSION_OsIsUnicode()) … … 1878 1878 WORD wAttrib = 0; 1879 1879 int i; 1880 1880 1881 if (! pData) return 0; 1882 1881 1883 switch(pData->type) 1882 1884 { … … 1888 1890 break; 1889 1891 } 1892 1890 1893 if(uOutSize >= 6) 1891 1894 { … … 1916 1919 } 1917 1920 1921 1922 /************************************************************************* 1923 * ILFreeaPidl 1924 * 1925 * free a aPidl struct 1926 */ 1927 ODINPROCEDURE2(_ILFreeaPidl, 1928 LPITEMIDLIST *, apidl, 1929 UINT, cidl) 1930 { 1931 int i; 1932 1933 if(apidl) 1934 { 1935 for(i = 0; i < cidl; i++) SHFree(apidl[i]); 1936 SHFree(apidl); 1937 } 1938 } 1939 1940 /************************************************************************* 1941 * ILCopyaPidl 1942 * 1943 * copys a aPidl struct 1944 */ 1945 ODINFUNCTION2(LPITEMIDLIST *,_ILCopyaPidl, 1946 LPITEMIDLIST *,apidlsrc, 1947 UINT, cidl) 1948 { 1949 int i; 1950 LPITEMIDLIST * apidldest = (LPITEMIDLIST*)SHAlloc(cidl * sizeof(LPITEMIDLIST)); 1951 if(!apidlsrc) return NULL; 1952 1953 for(i = 0; i < cidl; i++) 1954 apidldest[i] = ILClone(apidlsrc[i]); 1955 1956 return apidldest; 1957 } 1958 1959 /************************************************************************* 1960 * _ILCopyCidaToaPidl 1961 * 1962 * creates aPidl from CIDA 1963 */ 1964 ODINFUNCTION2(LPITEMIDLIST*, _ILCopyCidaToaPidl, 1965 LPITEMIDLIST*, pidl, 1966 LPCIDA, cida) 1967 { 1968 int i; 1969 LPITEMIDLIST * dst = (LPITEMIDLIST*)SHAlloc(cida->cidl * sizeof(LPITEMIDLIST)); 1970 1971 if(!dst) return NULL; 1972 1973 if (pidl) 1974 *pidl = ILClone((LPITEMIDLIST)(&((LPBYTE)cida)[cida->aoffset[0]])); 1975 1976 for(i = 0; i < cida->cidl; i++) 1977 dst[i] = ILClone((LPITEMIDLIST)(&((LPBYTE)cida)[cida->aoffset[i + 1]])); 1978 1979 return dst; 1980 }
Note:
See TracChangeset
for help on using the changeset viewer.