Modified: trunk/reactos/lib/shlwapi/Makefile.in
Modified: trunk/reactos/lib/shlwapi/reg.c
Modified: trunk/reactos/lib/shlwapi/url.c
--- trunk/reactos/lib/shlwapi/Makefile.in 2005-05-28 21:38:59 UTC (rev 15622)
+++ trunk/reactos/lib/shlwapi/Makefile.in 2005-05-28 21:39:03 UTC (rev 15623)
@@ -4,6 +4,7 @@
SRCDIR = @srcdir@
VPATH = @srcdir@
MODULE = shlwapi.dll
+IMPORTLIB = libshlwapi.$(IMPLIBEXT)
IMPORTS = ole32 user32 gdi32 advapi32 kernel32 ntdll
DELAYIMPORTS = oleaut32
EXTRALIBS = -luuid $(LIBUNICODE)
--- trunk/reactos/lib/shlwapi/reg.c 2005-05-28 21:38:59 UTC (rev 15622)
+++ trunk/reactos/lib/shlwapi/reg.c 2005-05-28 21:39:03 UTC (rev 15623)
@@ -1300,10 +1300,10 @@
*
* REG_EXPAND_SZ:
* case-1: the unexpanded string is smaller than the expanded one
- * subcase-1: the buffer is to small to hold the unexpanded string:
+ * subcase-1: the buffer is too small to hold the unexpanded string:
* function fails and returns the size of the unexpanded string.
*
- * subcase-2: buffer is to small to hold the expanded string:
+ * subcase-2: buffer is too small to hold the expanded string:
* the function return success (!!) and the result is truncated
* *** This is clearly an error in the native implementation. ***
*
@@ -1332,7 +1332,7 @@
/* Expand type REG_EXPAND_SZ into REG_SZ */
LPSTR szData;
- /* If the caller didn't supply a buffer or the buffer is to small we have
+ /* If the caller didn't supply a buffer or the buffer is too small we have
* to allocate our own
*/
if ((!pvData) || (dwRet == ERROR_MORE_DATA) )
--- trunk/reactos/lib/shlwapi/url.c 2005-05-28 21:38:59 UTC (rev 15622)
+++ trunk/reactos/lib/shlwapi/url.c 2005-05-28 21:39:03 UTC (rev 15623)
@@ -459,7 +459,7 @@
lpszUrlCpy[--nLen]=0;
if(dwFlags & URL_UNESCAPE)
- UrlUnescapeW(lpszUrlCpy, NULL, NULL, URL_UNESCAPE_INPLACE);
+ UrlUnescapeW(lpszUrlCpy, NULL, &nLen, URL_UNESCAPE_INPLACE);
if((EscapeFlags = dwFlags & (URL_ESCAPE_UNSAFE |
URL_ESCAPE_SPACES_ONLY |
@@ -1160,7 +1160,7 @@
TRACE("(%s, %p, %p, 0x%08lx)\n", debugstr_w(pszUrl), pszUnescaped,
pcchUnescaped, dwFlags);
- if(!pszUrl || !pszUnescaped || !pcchUnescaped)
+ if(!pszUrl || (!pszUnescaped && !(dwFlags & URL_UNESCAPE_INPLACE))|| !pcchUnescaped)
return E_INVALIDARG;
if(dwFlags & URL_UNESCAPE_INPLACE)