From e1b309d6de98faf5facae071ce3aacb57c20fc63 Mon Sep 17 00:00:00 2001
From: David Quintana <gigaherz@gmail.com>
Date: Thu, 10 Jul 2014 19:16:21 +0000
Subject: [PATCH] [RSHELL] * Really fix GCC build.

svn path=/branches/shell-experiments/; revision=63709
---
 base/shell/rshell/CMergedFolder.cpp | 4 ++--
 base/shell/rshell/CMergedFolder.h   | 6 +++---
 base/shell/rshell/CStartMenu.cpp    | 7 ++++++-
 base/shell/rshell/rshell.spec       | 2 +-
 4 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/base/shell/rshell/CMergedFolder.cpp b/base/shell/rshell/CMergedFolder.cpp
index 544f1a07f12..32ca1ccee05 100644
--- a/base/shell/rshell/CMergedFolder.cpp
+++ b/base/shell/rshell/CMergedFolder.cpp
@@ -111,7 +111,7 @@ HRESULT CEnumMergedFolder::SetSources(IShellFolder * userLocal, IShellFolder * a
     m_UserLocalFolder = userLocal;
     m_AllUSersFolder = allUSers;
 
-    TRACE("SetSources %p %p\n", m_UserLocalFolder, m_AllUSersFolder);
+    TRACE("SetSources %p %p\n", userLocal, allUSers);
     return S_OK;
 }
 
@@ -397,7 +397,7 @@ HRESULT STDMETHODCALLTYPE CMergedFolder::AddNameSpace(LPGUID lpGuid, IShellFolde
         return E_NOTIMPL;
     }
 
-    TRACE("AddNameSpace %p %p\n", m_UserLocal, m_AllUSers);
+    TRACE("AddNameSpace %p %p\n", m_UserLocal.p, m_AllUSers.p);
     
     // FIXME: Use a DSA to store the list of merged namespaces, together with their related info (psf, pidl, ...)
     // For now, assume only 2 will ever be used, and ignore all the other data.
diff --git a/base/shell/rshell/CMergedFolder.h b/base/shell/rshell/CMergedFolder.h
index 8b8f359459e..3c92294b7b4 100644
--- a/base/shell/rshell/CMergedFolder.h
+++ b/base/shell/rshell/CMergedFolder.h
@@ -19,9 +19,9 @@
  */
 #pragma once
 
-static IID IID_IAugmentedShellFolder  = { 0x91EA3F8C, 0xC99B, 0x11D0, { 0x98, 0x15, 0x00, 0xC0, 0x4F, 0xD9, 0x19, 0x72 } };
-static IID IID_IAugmentedShellFolder2 = { 0x8DB3B3F4, 0x6CFE, 0x11D1, { 0x8A, 0xE9, 0x00, 0xC0, 0x4F, 0xD9, 0x18, 0xD0 } };
-static CLSID CLSID_MergedFolder       = { 0x26FDC864, 0xBE88, 0x46E7, { 0x92, 0x35, 0x03, 0x2D, 0x8E, 0xA5, 0x16, 0x2E } };
+extern IID IID_IAugmentedShellFolder;
+extern IID IID_IAugmentedShellFolder2;
+extern CLSID CLSID_MergedFolder;
 
 interface IAugmentedShellFolder : public IShellFolder
 {
diff --git a/base/shell/rshell/CStartMenu.cpp b/base/shell/rshell/CStartMenu.cpp
index 13361e6373c..1c17d8c4199 100644
--- a/base/shell/rshell/CStartMenu.cpp
+++ b/base/shell/rshell/CStartMenu.cpp
@@ -21,6 +21,10 @@
 
 #include "CMergedFolder.h"
 
+IID IID_IAugmentedShellFolder = { 0x91EA3F8C, 0xC99B, 0x11D0, { 0x98, 0x15, 0x00, 0xC0, 0x4F, 0xD9, 0x19, 0x72 } };
+IID IID_IAugmentedShellFolder2 = { 0x8DB3B3F4, 0x6CFE, 0x11D1, { 0x8A, 0xE9, 0x00, 0xC0, 0x4F, 0xD9, 0x18, 0xD0 } };
+CLSID CLSID_MergedFolder = { 0x26FDC864, 0xBE88, 0x46E7, { 0x92, 0x35, 0x03, 0x2D, 0x8E, 0xA5, 0x16, 0x2E } };
+
 //#define TEST_TRACKPOPUPMENU_SUBMENUS
 
 
@@ -406,7 +410,8 @@ CStartMenu_Constructor(REFIID riid, void **ppv)
     if (FAILED_UNEXPECTEDLY(hr))
         return hr;
 
-    hr = psf->ParseDisplayName(NULL, NULL, L"Programs", NULL, &pidlPrograms, NULL);
+    WCHAR name[] = L"Programs";
+    hr = psf->ParseDisplayName(NULL, NULL, name, NULL, &pidlPrograms, NULL);
     if (FAILED_UNEXPECTEDLY(hr))
         return hr;
 
diff --git a/base/shell/rshell/rshell.spec b/base/shell/rshell/rshell.spec
index 997aa49f95a..8616e41cf37 100644
--- a/base/shell/rshell/rshell.spec
+++ b/base/shell/rshell/rshell.spec
@@ -2,4 +2,4 @@
 @   stdcall CMenuDeskBar_Constructor(ptr ptr);
 @   stdcall CMenuSite_Constructor(ptr ptr);
 @   stdcall CMenuBand_Constructor(ptr ptr);
-@	stdcall CMergedFolder_Constructor(ptr ptr ptr ptr)
\ No newline at end of file
+@	stdcall CMergedFolder_Constructor(ptr ptr);
\ No newline at end of file