[SHELL32] - Initialize the shell icon cache only when needed or when FileIconInit...
[reactos.git] / reactos / dll / win32 / shell32 / wine / shellord.c
index 099c722..df2c520 100644 (file)
@@ -800,7 +800,11 @@ void WINAPI SHAddToRecentDocs (UINT uFlags,LPCVOID pv)
     switch (uFlags)
     {
     case SHARD_PIDL:
-        SHGetPathFromIDListA(pv, doc_name);
+        if (!SHGetPathFromIDListA(pv, doc_name))
+        {
+            WARN("can't get path from PIDL\n");
+            return;
+        }
         break;
 
     case SHARD_PATHA:
@@ -896,7 +900,7 @@ void WINAPI SHAddToRecentDocs (UINT uFlags,LPCVOID pv)
                /* buffer size looks good */
                ptr += 12; /* get to string */
                len = bufused - (ptr-buffer);  /* get length of buf remaining */
-               if ((lstrlenA(ptr) > 0) && (lstrlenA(ptr) <= len-1)) {
+                if (ptr[0] && (lstrlenA(ptr) <= len-1)) {
                    /* appears to be good string */
                    lstrcpyA(old_lnk_name, link_dir);
                    PathAppendA(old_lnk_name, ptr);
@@ -1288,8 +1292,8 @@ BOOL WINAPI WriteCabinetState(CABINETSTATE *cs)
  *
  */
 BOOL WINAPI FileIconInit(BOOL bFullInit)
-{      FIXME("(%s)\n", bFullInit ? "true" : "false");
-       return FALSE;
+{
+    return SIC_Initialize();
 }
 
 /*************************************************************************