[ros-diffs] [akhaldi] 71258: [0.4.1] Merge the fix for enumerating ADS from files with 3+ streams, by Pierre in r71245. CORE-11164
Author: akhaldi Date: Tue May 3 22:36:26 2016 New Revision: 71258 URL: http://svn.reactos.org/svn/reactos?rev=71258=rev Log: [0.4.1] Merge the fix for enumerating ADS from files with 3+ streams, by Pierre in r71245. CORE-11164 Modified: branches/ros-branch-0_4_1/ (props changed) branches/ros-branch-0_4_1/reactos/ (props changed) branches/ros-branch-0_4_1/reactos/dll/win32/kernel32/client/file/find.c Propchange: branches/ros-branch-0_4_1/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 22:36:26 2016 @@ -1 +1 @@ -/trunk:71217,71231,71252,71255 +/trunk:71217,71231,71245,71252,71255 Propchange: branches/ros-branch-0_4_1/reactos/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 22:36:26 2016 @@ -20,4 +20,4 @@ /branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859 /branches/usb-bringup-trunk:55019-55543,55548-4,6-55567 /branches/wlan-bringup:54809-54998 -/trunk/reactos:71217,71231-71232,71252 +/trunk/reactos:71217,71231-71232,71245,71252 Modified: branches/ros-branch-0_4_1/reactos/dll/win32/kernel32/client/file/find.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/dll/win32/kernel32/client/file/find.c?rev=71258=71257=71258=diff == --- branches/ros-branch-0_4_1/reactos/dll/win32/kernel32/client/file/find.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/dll/win32/kernel32/client/file/find.c [iso-8859-1] Tue May 3 22:36:26 2016 @@ -1129,7 +1129,7 @@ /* Select next stream if possible */ if (FindStreamData->CurrentInfo->NextEntryOffset != 0) { -FindStreamData->CurrentInfo = (PFILE_STREAM_INFORMATION)((ULONG_PTR)FindStreamData->FileStreamInfo + +FindStreamData->CurrentInfo = (PFILE_STREAM_INFORMATION)((ULONG_PTR)FindStreamData->CurrentInfo + FindStreamData->CurrentInfo->NextEntryOffset); /* Return the information */
[ros-diffs] [akhaldi] 71257: [0.4.1] Merge the scroll bar glitch fix by Herschel Ralston in r71231. CORE-3923 CORE-11155
Author: akhaldi Date: Tue May 3 22:31:13 2016 New Revision: 71257 URL: http://svn.reactos.org/svn/reactos?rev=71257=rev Log: [0.4.1] Merge the scroll bar glitch fix by Herschel Ralston in r71231. CORE-3923 CORE-11155 Modified: branches/ros-branch-0_4_1/ (props changed) branches/ros-branch-0_4_1/reactos/ (props changed) branches/ros-branch-0_4_1/reactos/win32ss/user/user32/controls/scrollbar.c Propchange: branches/ros-branch-0_4_1/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 22:31:13 2016 @@ -1 +1 @@ -/trunk:71217,71252,71255 +/trunk:71217,71231,71252,71255 Propchange: branches/ros-branch-0_4_1/reactos/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 22:31:13 2016 @@ -20,4 +20,4 @@ /branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859 /branches/usb-bringup-trunk:55019-55543,55548-4,6-55567 /branches/wlan-bringup:54809-54998 -/trunk/reactos:71217,71232,71252 +/trunk/reactos:71217,71231-71232,71252 Modified: branches/ros-branch-0_4_1/reactos/win32ss/user/user32/controls/scrollbar.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/win32ss/user/user32/controls/scrollbar.c?rev=71257=71256=71257=diff == --- branches/ros-branch-0_4_1/reactos/win32ss/user/user32/controls/scrollbar.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/win32ss/user/user32/controls/scrollbar.c [iso-8859-1] Tue May 3 22:31:13 2016 @@ -855,6 +855,7 @@ NewInfo.rgstate[ScrollTrackHitTest] = ScrollBarInfo.rgstate[ScrollTrackHitTest]; NtUserSetScrollBarInfo(Wnd, IntScrollGetObjectId(SBType), ); +IntDrawScrollInterior(Wnd,Dc,SBType,Vertical,); IntDrawScrollArrows(Dc, , Vertical); break;
[ros-diffs] [akhaldi] 71256: [0.4.1] Merge the UniATA sync in revisions 71252 and 71255. CORE-11157
Author: akhaldi Date: Tue May 3 22:25:27 2016 New Revision: 71256 URL: http://svn.reactos.org/svn/reactos?rev=71256=rev Log: [0.4.1] Merge the UniATA sync in revisions 71252 and 71255. CORE-11157 Added: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/atacmd_map.cpp - copied unchanged from r71252, trunk/reactos/drivers/storage/ide/uniata/atacmd_map.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/atacmd_map.h - copied unchanged from r71252, trunk/reactos/drivers/storage/ide/uniata/atacmd_map.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bm_devs.cpp - copied unchanged from r71252, trunk/reactos/drivers/storage/ide/uniata/bm_devs.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bm_devs_decl.h - copied unchanged from r71252, trunk/reactos/drivers/storage/ide/uniata/bm_devs_decl.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/stdafx.cpp - copied unchanged from r71252, trunk/reactos/drivers/storage/ide/uniata/stdafx.cpp Modified: branches/ros-branch-0_4_1/ (props changed) branches/ros-branch-0_4_1/reactos/ (props changed) branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/CMakeLists.txt branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/atapi.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bm_devs.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bsmaster.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_ata.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_dma.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_init.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_probe.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_queue.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_sata.cpp branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_sata.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/tools.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/uata_ctl.h branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/uniata_ver.h [This mail would be too long, it was shortened to contain the URLs only.] Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/CMakeLists.txt?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/atapi.h URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/atapi.h?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bm_devs.h URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bm_devs.h?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bsmaster.h URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/bsmaster.h?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_ata.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_ata.cpp?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_dma.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_dma.cpp?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_init.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_init.cpp?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_probe.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_probe.cpp?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_queue.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_queue.cpp?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_sata.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_sata.cpp?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_sata.h URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/id_sata.h?rev=71256=71255=71256=diff Modified: branches/ros-branch-0_4_1/reactos/drivers/storage/ide/uniata/tools.h URL:
[ros-diffs] [akhaldi] 71255: [UNIATA] Fix PCH.
Author: akhaldi Date: Tue May 3 22:23:02 2016 New Revision: 71255 URL: http://svn.reactos.org/svn/reactos?rev=71255=rev Log: [UNIATA] Fix PCH. Modified: trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt Modified: trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt?rev=71255=71254=71255=diff == --- trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt [iso-8859-1] Tue May 3 22:23:02 2016 @@ -18,7 +18,7 @@ id_queue.cpp id_sata.cpp ros_glue/ros_glue.cpp -stdafx.cpp) +stdafx.h) add_library(uniata SHARED ${SOURCE} idedma.rc)
[ros-diffs] [akhaldi] 71254: [0.4.1] Apply the usetup path localization fix by Wim Hueskes. CORE-9656
Author: akhaldi Date: Tue May 3 21:49:08 2016 New Revision: 71254 URL: http://svn.reactos.org/svn/reactos?rev=71254=rev Log: [0.4.1] Apply the usetup path localization fix by Wim Hueskes. CORE-9656 Modified: branches/ros-branch-0_4_1/reactos/base/setup/usetup/interface/usetup.c Modified: branches/ros-branch-0_4_1/reactos/base/setup/usetup/interface/usetup.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/base/setup/usetup/interface/usetup.c?rev=71254=71253=71254=diff == --- branches/ros-branch-0_4_1/reactos/base/setup/usetup/interface/usetup.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/base/setup/usetup/interface/usetup.c [iso-8859-1] Tue May 3 21:49:08 2016 @@ -629,6 +629,10 @@ * * Next pages: IntroPage, QuitPage * + * SIDEEFFECTS + * Init SelectedLanguageId + * Init LanguageId + * * RETURNS * Number of the next page. */ @@ -772,6 +776,8 @@ * Init RequiredPartitionDiskSpace * Init IsUnattendedSetup * If unattended, init *List and sets the Codepage + * If unattended, init SelectedLanguageId + * If unattended, init LanguageId * * RETURNS * Number of the next page. @@ -906,10 +912,10 @@ /* new part */ wcscpy(SelectedLanguageId,LocaleID); +LanguageId = (LANGID)(wcstol(SelectedLanguageId, NULL, 16) & 0x); /* first we hack LanguageList */ ListEntry = GetFirstListEntry(LanguageList); - while (ListEntry != NULL) { if (!wcsicmp(LocaleID, GetListEntryUserData(ListEntry)))
[ros-diffs] [akhaldi] 71253: [0.4.1] * Disable COMMAND.COM debugging messages. CORE-10710
Author: akhaldi Date: Tue May 3 21:40:38 2016 New Revision: 71253 URL: http://svn.reactos.org/svn/reactos?rev=71253=rev Log: [0.4.1] * Disable COMMAND.COM debugging messages. CORE-10710 Modified: branches/ros-branch-0_4_1/reactos/subsystems/mvdm/dos/command.S Modified: branches/ros-branch-0_4_1/reactos/subsystems/mvdm/dos/command.S URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/subsystems/mvdm/dos/command.S?rev=71253=71252=71253=diff == --- branches/ros-branch-0_4_1/reactos/subsystems/mvdm/dos/command.S [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/subsystems/mvdm/dos/command.S [iso-8859-1] Tue May 3 21:40:38 2016 @@ -18,6 +18,8 @@ #include // #define NDEBUG + +#define NDEBUG /* DEFINES /
[ros-diffs] [fireball] 71252: [UNIATA] - Update to 0.46d7. CORE-11157
Author: fireball Date: Tue May 3 21:16:08 2016 New Revision: 71252 URL: http://svn.reactos.org/svn/reactos?rev=71252=rev Log: [UNIATA] - Update to 0.46d7. CORE-11157 Added: trunk/reactos/drivers/storage/ide/uniata/atacmd_map.cpp (with props) trunk/reactos/drivers/storage/ide/uniata/atacmd_map.h (with props) trunk/reactos/drivers/storage/ide/uniata/bm_devs.cpp (with props) trunk/reactos/drivers/storage/ide/uniata/bm_devs_decl.h (with props) trunk/reactos/drivers/storage/ide/uniata/stdafx.cpp (with props) Modified: trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt trunk/reactos/drivers/storage/ide/uniata/atapi.h trunk/reactos/drivers/storage/ide/uniata/bm_devs.h trunk/reactos/drivers/storage/ide/uniata/bsmaster.h trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp trunk/reactos/drivers/storage/ide/uniata/id_init.cpp trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp trunk/reactos/drivers/storage/ide/uniata/id_queue.cpp trunk/reactos/drivers/storage/ide/uniata/id_sata.cpp trunk/reactos/drivers/storage/ide/uniata/id_sata.h trunk/reactos/drivers/storage/ide/uniata/tools.h trunk/reactos/drivers/storage/ide/uniata/uata_ctl.h trunk/reactos/drivers/storage/ide/uniata/uniata_ver.h [This mail would be too long, it was shortened to contain the URLs only.] Modified: trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/CMakeLists.txt?rev=71252=71251=71252=diff Added: trunk/reactos/drivers/storage/ide/uniata/atacmd_map.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/atacmd_map.cpp?rev=71252 Added: trunk/reactos/drivers/storage/ide/uniata/atacmd_map.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/atacmd_map.h?rev=71252 Modified: trunk/reactos/drivers/storage/ide/uniata/atapi.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/atapi.h?rev=71252=71251=71252=diff Added: trunk/reactos/drivers/storage/ide/uniata/bm_devs.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/bm_devs.cpp?rev=71252 Modified: trunk/reactos/drivers/storage/ide/uniata/bm_devs.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/bm_devs.h?rev=71252=71251=71252=diff Added: trunk/reactos/drivers/storage/ide/uniata/bm_devs_decl.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/bm_devs_decl.h?rev=71252 Modified: trunk/reactos/drivers/storage/ide/uniata/bsmaster.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/bsmaster.h?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_dma.cpp?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_init.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_init.cpp?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_probe.cpp?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_queue.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_queue.cpp?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_sata.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_sata.cpp?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/id_sata.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_sata.h?rev=71252=71251=71252=diff Added: trunk/reactos/drivers/storage/ide/uniata/stdafx.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/stdafx.cpp?rev=71252 Modified: trunk/reactos/drivers/storage/ide/uniata/tools.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/tools.h?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/uata_ctl.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/uata_ctl.h?rev=71252=71251=71252=diff Modified: trunk/reactos/drivers/storage/ide/uniata/uniata_ver.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/uniata_ver.h?rev=71252=71251=71252=diff
[ros-diffs] [akhaldi] 71251: [0.4.1] * Apply the wordpad related hack from CORE-5823 by Jared Smudde.
Author: akhaldi Date: Tue May 3 20:10:13 2016 New Revision: 71251 URL: http://svn.reactos.org/svn/reactos?rev=71251=rev Log: [0.4.1] * Apply the wordpad related hack from CORE-5823 by Jared Smudde. Modified: branches/ros-branch-0_4_1/reactos/base/applications/wordpad/res/formatbar.bmp branches/ros-branch-0_4_1/reactos/base/applications/wordpad/res/toolbar.bmp Modified: branches/ros-branch-0_4_1/reactos/base/applications/wordpad/res/formatbar.bmp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/base/applications/wordpad/res/formatbar.bmp?rev=71251=71250=71251=diff == Binary files - no diff available. Modified: branches/ros-branch-0_4_1/reactos/base/applications/wordpad/res/toolbar.bmp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/base/applications/wordpad/res/toolbar.bmp?rev=71251=71250=71251=diff == Binary files - no diff available.
[ros-diffs] [akhaldi] 71250: [0.4.1] * Apply the hackfix from CORE-9836 by Joachim Henze.
Author: akhaldi Date: Tue May 3 20:08:25 2016 New Revision: 71250 URL: http://svn.reactos.org/svn/reactos?rev=71250=rev Log: [0.4.1] * Apply the hackfix from CORE-9836 by Joachim Henze. Modified: branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/class.c branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/cursoricon.c branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/msgqueue.c Modified: branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/class.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/class.c?rev=71250=71249=71250=diff == --- branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/class.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/class.c [iso-8859-1] Tue May 3 20:08:25 2016 @@ -267,8 +267,11 @@ if (Class->spicn) UserDereferenceObject(Class->spicn); -if (Class->spcur) +if (Class->spcur && !UserObjectInDestroy(Class->spcur)) +{ UserDereferenceObject(Class->spcur); +Class->spcur = NULL; +} if (Class->spicnSm) { UserDereferenceObject(Class->spicnSm); Modified: branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/cursoricon.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/cursoricon.c?rev=71250=71249=71250=diff == --- branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/cursoricon.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/cursoricon.c [iso-8859-1] Tue May 3 20:08:25 2016 @@ -1086,11 +1086,14 @@ goto leave; } +pcurOld->CURSORF_flags &= ~CURSORF_CURRENT; + /* See if it was destroyed in the meantime */ if (UserObjectInDestroy(hOldCursor)) -hOldCursor = NULL; -pcurOld->CURSORF_flags &= ~CURSORF_CURRENT; -UserDereferenceObject(pcurOld); +{ +UserDereferenceObject(pcurOld); +pcurOld = NULL; +} } leave: Modified: branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/msgqueue.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/msgqueue.c?rev=71250=71249=71250=diff == --- branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/msgqueue.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/msgqueue.c [iso-8859-1] Tue May 3 20:08:25 2016 @@ -2288,8 +2288,12 @@ IntGetSysCursorInfo()->CurrentCursorObject = NULL; } - TRACE("DereferenceObject pCursor\n"); - UserDereferenceObject(pCursor); + if (pCursor && UserObjectInDestroy(UserHMGetHandle(pCursor))) + { + TRACE("DereferenceObject pCursor\n"); + UserDereferenceObject(pCursor); + pCursor = NULL; + } } if (gpqForeground == MessageQueue)
[ros-diffs] [akhaldi] 71249: [0.4.1] * Apply the patch that allows us to dynamically change the resolution by resizing in VirtualBox. CORE-6742
Author: akhaldi Date: Tue May 3 20:01:28 2016 New Revision: 71249 URL: http://svn.reactos.org/svn/reactos?rev=71249=rev Log: [0.4.1] * Apply the patch that allows us to dynamically change the resolution by resizing in VirtualBox. CORE-6742 Modified: branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/device.h branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/pdevobj.c branches/ros-branch-0_4_1/reactos/win32ss/user/ntuser/display.c Modified: branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/device.h URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/device.h?rev=71249=71248=71249=diff == --- branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/device.h [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/device.h [iso-8859-1] Tue May 3 20:01:28 2016 @@ -2,6 +2,11 @@ #pragma once #define TAG_GDEV 'gdev' + +VOID +NTAPI +PDEVOBJ_vRefreshModeList( +PPDEVOBJ ppdev); extern PGRAPHICS_DEVICE gpPrimaryGraphicsDevice; extern PGRAPHICS_DEVICE gpVgaGraphicsDevice; Modified: branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/pdevobj.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/pdevobj.c?rev=71249=71248=71249=diff == --- branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/pdevobj.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/win32ss/gdi/eng/pdevobj.c [iso-8859-1] Tue May 3 20:01:28 2016 @@ -9,6 +9,8 @@ #include #define NDEBUG #include + +DBG_DEFAULT_CHANNEL(UserDisplay); PPDEVOBJ gppdevPrimary = NULL; @@ -247,8 +249,109 @@ /* Increment reference count */ GDIOBJ_vReferenceObjectByPointer(>pSurface->BaseObject); -DPRINT("PDEVOBJ_pSurface() returning %p\n", ppdev->pSurface); +TRACE("PDEVOBJ_pSurface() returning %p\n", ppdev->pSurface); return ppdev->pSurface; +} + +VOID +NTAPI +PDEVOBJ_vRefreshModeList( +PPDEVOBJ ppdev) +{ +PGRAPHICS_DEVICE pGraphicsDevice; +PDEVMODEENTRY pTmpDevModeList, pOldDevModeList; +PDEVMODEINFO pdminfo; +PDEVMODEW pdm, pdmEnd; +UINT cModes = 0; +UINT j = 0; + +/* Lock the PDEV */ +EngAcquireSemaphore(ppdev->hsemDevLock); + +pGraphicsDevice = ppdev->pGraphicsDevice; + +TRACE("Enter PDEVOBJ_vRefreshModeList('%ws'/'%ws')\n", + pGraphicsDevice->szNtDeviceName, + pGraphicsDevice->szWinDeviceName); + +pdminfo = LDEVOBJ_pdmiGetModes(ppdev->pldev, pGraphicsDevice->DeviceObject); + +if (!pdminfo || pdminfo->cbdevmode == 0) +{ +ERR("Could not get an updated mode list for '%ls'\n", pGraphicsDevice->szWinDeviceName); +} +else +{ +TRACE("Bingo! We've just got some (%lu) new modes for '%ls'.\n", pdminfo->cbdevmode/sizeof(DEVMODEW), pGraphicsDevice->szWinDeviceName); + +/* Loop all DEVMODEs */ +pdmEnd = (DEVMODEW*)((PCHAR)pdminfo->adevmode + pdminfo->cbdevmode); +for (pdm = pdminfo->adevmode; + (pdm + 1 <= pdmEnd) && (pdm->dmSize != 0); + pdm = (DEVMODEW*)((PCHAR)pdm + pdm->dmSize + pdm->dmDriverExtra)) +{ +TRACE("mode %lu -- %lux%lux%lu (%lu hz)\n", cModes, pdminfo->adevmode[cModes].dmPelsWidth, + pdminfo->adevmode[cModes].dmPelsHeight, + pdminfo->adevmode[cModes].dmBitsPerPel, + pdminfo->adevmode[cModes].dmDisplayFrequency); + +/* Some drivers like the VBox driver don't fill the dmDeviceName + with the name of the display driver. So fix that here. */ +wcsncpy(pdminfo->adevmode[cModes].dmDeviceName, pGraphicsDevice->pDiplayDrivers, CCHDEVICENAME); +pdminfo->adevmode[cModes].dmDeviceName[CCHDEVICENAME - 1] = 0; + +/* Count this DEVMODE */ +cModes++; +} + +if (cModes == 0) +{ +ERR("No valid devmodes returned by the driver on mode list refresh!\n"); +ExFreePoolWithTag(pdminfo, GDITAG_DEVMODE); +return; +} + +/* Allocate an index buffer early on, even before trying to change the graphics device struct */ +pTmpDevModeList = ExAllocatePoolWithTag(PagedPool, +cModes * sizeof(DEVMODEENTRY), +GDITAG_GDEVICE); + +if (!pTmpDevModeList) +{ +ERR("Bummer! Not enough memory to alloc a new DevModeList\n"); +return; +} + +/* Save a reference to the old thing */ +pOldDevModeList = pGraphicsDevice->pDevModeList; + +/* Attach the new mode info and company to the device, + the GraphicsDevice could
[ros-diffs] [mjansen] 71248: [WINTRUST_WINETEST] Import Wine Staging commit bdb15cf (WinVerifyTrust tests), by Sebastian Lackner & Me CORE-10923
Author: mjansen Date: Tue May 3 19:29:39 2016 New Revision: 71248 URL: http://svn.reactos.org/svn/reactos?rev=71248=rev Log: [WINTRUST_WINETEST] Import Wine Staging commit bdb15cf (WinVerifyTrust tests), by Sebastian Lackner & Me CORE-10923 Modified: trunk/rostests/winetests/wintrust/softpub.c Modified: trunk/rostests/winetests/wintrust/softpub.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/wintrust/softpub.c?rev=71248=71247=71248=diff == --- trunk/rostests/winetests/wintrust/softpub.c [iso-8859-1] (original) +++ trunk/rostests/winetests/wintrust/softpub.c [iso-8859-1] Tue May 3 19:29:39 2016 @@ -3,6 +3,7 @@ * * Copyright 2007,2010 Juan Lang * Copyright 2010 Andrey Turkin + * Copyright 2016 Mark Jansen * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -869,6 +870,376 @@ ok(r == S_OK, "WinVerifyTrust failed: %08x\n", r); } +/* Self-signed .exe, built with tcc, signed with signtool + * (and a certificate generated on a self-signed CA). + * + * small.c: + * int _start() + * { + * return 0; + * } + * + * tcc -nostdlib small.c + * signtool sign /v /f codesign.pfx small.exe + */ +static const BYTE SelfSignedFile32[] = +{ + 0x4D,0x5A,0x90,0x00,0x03,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0xB8,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x0E,0x1F,0xBA,0x0E,0x00,0xB4,0x09,0xCD, + 0x21,0xB8,0x01,0x4C,0xCD,0x21,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6F,0x67,0x72,0x61,0x6D,0x20,0x63,0x61,0x6E,0x6E,0x6F, + 0x74,0x20,0x62,0x65,0x20,0x72,0x75,0x6E,0x20,0x69,0x6E,0x20,0x44,0x4F,0x53,0x20,0x6D,0x6F,0x64,0x65,0x2E,0x0D,0x0D,0x0A, + 0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x50,0x45,0x00,0x00,0x4C,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xE0,0x00,0x0F,0x03,0x0B,0x01,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x10,0x00,0x00,0x00,0x02,0x00,0x00, + 0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x02,0x00,0x00, + 0xE7,0x0C,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00, + 0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x68,0x05,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2E,0x74,0x65,0x78,0x74,0x00,0x00,0x00, + 0x18,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x55,0x89,0xE5,0x81,0xEC,0x00,0x00,0x00,0x00,0x90,0xB8,0x00,0x00,0x00,0x00,0xE9, + 0x00,0x00,0x00,0x00,0xC9,0xC3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +
[ros-diffs] [akhaldi] 71247: [0.4.1] Merge the shell fixes by Giannis in r71217 as they addressed "My network places" missing icon. CORE-10943
Author: akhaldi Date: Tue May 3 19:00:54 2016 New Revision: 71247 URL: http://svn.reactos.org/svn/reactos?rev=71247=rev Log: [0.4.1] Merge the shell fixes by Giannis in r71217 as they addressed "My network places" missing icon. CORE-10943 Modified: branches/ros-branch-0_4_1/ (props changed) branches/ros-branch-0_4_1/reactos/ (props changed) branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CNetFolder.cpp branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CRecycleBin.cpp branches/ros-branch-0_4_1/rosapps/applications/cmdutils/cat/ (props changed) branches/ros-branch-0_4_1/rosapps/applications/imagesoft/lang/no-NO.rc (props changed) branches/ros-branch-0_4_1/rosapps/applications/net/roshttpd/ (props changed) branches/ros-branch-0_4_1/rosapps/applications/sysutils/gettype/ (props changed) branches/ros-branch-0_4_1/rosapps/applications/sysutils/logevent/ (props changed) branches/ros-branch-0_4_1/rosapps/applications/sysutils/screenshot/ (props changed) branches/ros-branch-0_4_1/rosapps/templates/old_wordpad/lang/no-NO.rc (props changed) Propchange: branches/ros-branch-0_4_1/ -- svn:mergeinfo = /trunk:71217 Propchange: branches/ros-branch-0_4_1/reactos/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 19:00:54 2016 @@ -20,4 +20,4 @@ /branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859 /branches/usb-bringup-trunk:55019-55543,55548-4,6-55567 /branches/wlan-bringup:54809-54998 -/trunk/reactos:71232 +/trunk/reactos:71217,71232 Modified: branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CNetFolder.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CNetFolder.cpp?rev=71247=71246=71247=diff == --- branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CNetFolder.cpp [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CNetFolder.cpp [iso-8859-1] Tue May 3 19:00:54 2016 @@ -47,6 +47,18 @@ * IShellFolder implementation */ +HRESULT CNetFolderExtractIcon_CreateInstance(LPCITEMIDLIST pidl, REFIID riid, LPVOID * ppvOut) +{ +CComPtr initIcon; +HRESULT hr = SHCreateDefaultExtractIcon(IID_PPV_ARG(IDefaultExtractIconInit, )); +if (FAILED(hr)) +return NULL; + +initIcon->SetNormalIcon(swShell32Name, -IDI_SHELL_NETWORK_FOLDER); + +return initIcon->QueryInterface(riid, ppvOut); +} + class CNetFolderEnum : public CEnumIDListBase { @@ -403,8 +415,7 @@ HRESULT WINAPI CNetFolder::GetUIObjectOf(HWND hwndOwner, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, REFIID riid, UINT * prgfInOut, LPVOID * ppvOut) { -LPITEMIDLIST pidl; -IUnknown *pObj = NULL; +LPVOID pObj = NULL; HRESULT hr = E_INVALIDARG; TRACE("(%p)->(%p,%u,apidl=%p,%s,%p,%p)\n", this, @@ -427,19 +438,9 @@ hr = IDataObject_Constructor (hwndOwner, pidlRoot, apidl, cidl, ); pObj = pDo; } -else if (IsEqualIID(riid, IID_IExtractIconA) && (cidl == 1)) -{ -pidl = ILCombine (pidlRoot, apidl[0]); -pObj = IExtractIconA_Constructor (pidl); -SHFree (pidl); -hr = S_OK; -} -else if (IsEqualIID(riid, IID_IExtractIconW) && (cidl == 1)) -{ -pidl = ILCombine (pidlRoot, apidl[0]); -pObj = IExtractIconW_Constructor (pidl); -SHFree (pidl); -hr = S_OK; +else if ((IsEqualIID(riid, IID_IExtractIconA) || IsEqualIID(riid, IID_IExtractIconW)) && (cidl == 1)) +{ +hr = CNetFolderExtractIcon_CreateInstance(apidl[0], riid, ); } else if (IsEqualIID(riid, IID_IDropTarget) && (cidl >= 1)) { Modified: branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp?rev=71247=71246=71247=diff == --- branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp [iso-8859-1] Tue May 3 19:00:54 2016 @@ -26,35 +26,6 @@ #include WINE_DEFAULT_DEBUG_CHANNEL (shell); - -/*** - * Printers_IExtractIconW
[ros-diffs] [akhaldi] 71246: * Sync up to trunk head (r71245).
Author: akhaldi Date: Tue May 3 18:19:13 2016 New Revision: 71246 URL: http://svn.reactos.org/svn/reactos?rev=71246=rev Log: * Sync up to trunk head (r71245). Added: branches/GSoC_2016/NTFS/dll/appcompat/apphelp/sdbfileattr.c - copied unchanged from r71245, trunk/reactos/dll/appcompat/apphelp/sdbfileattr.c branches/GSoC_2016/NTFS/dll/win32/shell32/shellrecyclebin/ - copied from r71245, trunk/reactos/dll/win32/shell32/shellrecyclebin/ Removed: branches/GSoC_2016/NTFS/sdk/lib/recyclebin/ Modified: branches/GSoC_2016/NTFS/ (props changed) branches/GSoC_2016/NTFS/configure.cmd branches/GSoC_2016/NTFS/configure.sh branches/GSoC_2016/NTFS/dll/appcompat/apphelp/CMakeLists.txt branches/GSoC_2016/NTFS/dll/appcompat/apphelp/apphelp.h branches/GSoC_2016/NTFS/dll/appcompat/apphelp/apphelp.spec branches/GSoC_2016/NTFS/dll/appcompat/apphelp/sdbapi.c branches/GSoC_2016/NTFS/dll/win32/comdlg32/filedlg.c branches/GSoC_2016/NTFS/dll/win32/dhcpcsvc/dhcp/util.c branches/GSoC_2016/NTFS/dll/win32/kernel32/client/file/find.c branches/GSoC_2016/NTFS/dll/win32/shell32/CMakeLists.txt branches/GSoC_2016/NTFS/dll/win32/shell32/CShellLink.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CControlPanelFolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CDesktopFolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CDesktopFolder.h branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CDrivesFolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CDrivesFolder.h branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CFSFolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CNetFolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CPrinterFolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/folders/CRecycleBin.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/lang/de-DE.rc branches/GSoC_2016/NTFS/dll/win32/shell32/precomp.h branches/GSoC_2016/NTFS/dll/win32/shell32/shfldr.h branches/GSoC_2016/NTFS/dll/win32/shell32/shlfolder.cpp branches/GSoC_2016/NTFS/dll/win32/shell32/wine/shell32_main.h branches/GSoC_2016/NTFS/dll/win32/shell32/wine/shellord.c branches/GSoC_2016/NTFS/drivers/bus/acpi/pnp.c branches/GSoC_2016/NTFS/drivers/filesystems/btrfs/write.c branches/GSoC_2016/NTFS/drivers/filesystems/fastfat/dirwr.c branches/GSoC_2016/NTFS/drivers/filesystems/fastfat/fcb.c branches/GSoC_2016/NTFS/drivers/filesystems/fastfat/vfat.h branches/GSoC_2016/NTFS/drivers/filesystems/ntfs/ntfs.h branches/GSoC_2016/NTFS/drivers/ksfilter/ks/connectivity.c branches/GSoC_2016/NTFS/drivers/network/ndis/ndis/protocol.c branches/GSoC_2016/NTFS/drivers/storage/classpnp/class.c branches/GSoC_2016/NTFS/ntoskrnl/config/ntapi.c branches/GSoC_2016/NTFS/sdk/include/psdk/ntdddisk.h branches/GSoC_2016/NTFS/sdk/lib/CMakeLists.txt branches/GSoC_2016/NTFS/sdk/tools/cdmake/cdmake.c branches/GSoC_2016/NTFS/win32ss/user/ntuser/desktop.c branches/GSoC_2016/NTFS/win32ss/user/user32/controls/edit.c branches/GSoC_2016/NTFS/win32ss/user/user32/controls/scrollbar.c [This mail would be too long, it was shortened to contain the URLs only.] Modified: branches/GSoC_2016/NTFS/configure.cmd URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/configure.cmd?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/configure.sh URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/configure.sh?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/appcompat/apphelp/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/appcompat/apphelp/CMakeLists.txt?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/appcompat/apphelp/apphelp.h URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/appcompat/apphelp/apphelp.h?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/appcompat/apphelp/apphelp.spec URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/appcompat/apphelp/apphelp.spec?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/appcompat/apphelp/sdbapi.c URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/appcompat/apphelp/sdbapi.c?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/win32/comdlg32/filedlg.c URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/win32/comdlg32/filedlg.c?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/win32/dhcpcsvc/dhcp/util.c URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/win32/dhcpcsvc/dhcp/util.c?rev=71246=71245=71246=diff Modified: branches/GSoC_2016/NTFS/dll/win32/kernel32/client/file/find.c URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/dll/win32/kernel32/client/file/find.c?rev=71246=71245=71246=diff Modified:
[ros-diffs] [pschweitzer] 71245: [KERNEL32] The onliner: - Move to next entry by applying the offset to the previous entry, and not to the first entry This fixes enumerating ADS from files with 3+ str
Author: pschweitzer Date: Tue May 3 17:58:28 2016 New Revision: 71245 URL: http://svn.reactos.org/svn/reactos?rev=71245=rev Log: [KERNEL32] The onliner: - Move to next entry by applying the offset to the previous entry, and not to the first entry This fixes enumerating ADS from files with 3+ streams. Previously, doing dir /R in a directory would have lead to a cmd crash. CORE-11164 #resolve #comment Fixed by r71245 Modified: trunk/reactos/dll/win32/kernel32/client/file/find.c Modified: trunk/reactos/dll/win32/kernel32/client/file/find.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/client/file/find.c?rev=71245=71244=71245=diff == --- trunk/reactos/dll/win32/kernel32/client/file/find.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/kernel32/client/file/find.c [iso-8859-1] Tue May 3 17:58:28 2016 @@ -1129,7 +1129,7 @@ /* Select next stream if possible */ if (FindStreamData->CurrentInfo->NextEntryOffset != 0) { -FindStreamData->CurrentInfo = (PFILE_STREAM_INFORMATION)((ULONG_PTR)FindStreamData->FileStreamInfo + +FindStreamData->CurrentInfo = (PFILE_STREAM_INFORMATION)((ULONG_PTR)FindStreamData->CurrentInfo + FindStreamData->CurrentInfo->NextEntryOffset); /* Return the information */
[ros-diffs] [gadamopoulos] 71244: [SHELL32] - Remove a debug message that should have been removed before committing. - Also fix a test failure.
Author: gadamopoulos Date: Tue May 3 17:10:09 2016 New Revision: 71244 URL: http://svn.reactos.org/svn/reactos?rev=71244=rev Log: [SHELL32] - Remove a debug message that should have been removed before committing. - Also fix a test failure. Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp?rev=71244=71243=71244=diff == --- trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] Tue May 3 17:10:09 2016 @@ -310,8 +310,6 @@ if (!_ILSimpleGetTextW(pidl, szFileName + cLen, MAX_PATH - cLen)) return E_FAIL; -ERR("%S\n", szFileName); - if (GetFileAttributes(szFileName) == INVALID_FILE_ATTRIBUTES) return m_SharedDesktopFSFolder->QueryInterface(IID_PPV_ARG(IShellFolder2, psf)); else @@ -445,8 +443,8 @@ REFIID riid, LPVOID *ppvOut) { -TRACE ("(%p)->(pidl=%p,%p,%s,%p)\n", - this, pidl, pbcReserved, shdebugstr_guid (), ppvOut); +if (!pidl) +return E_INVALIDARG; if (_ILIsSpecialFolder(pidl)) return SHELL32_BindToGuidItem(pidlRoot, pidl, pbcReserved, riid, ppvOut);
[ros-diffs] [gadamopoulos] 71243: [SHELL32] - Move recyclebin static lib in the shell32 folder and name it shellrecyclebin alongside shelldesktop and shellmenu static libs.
Author: gadamopoulos Date: Tue May 3 14:36:04 2016 New Revision: 71243 URL: http://svn.reactos.org/svn/reactos?rev=71243=rev Log: [SHELL32] - Move recyclebin static lib in the shell32 folder and name it shellrecyclebin alongside shelldesktop and shellmenu static libs. Added: trunk/reactos/dll/win32/shell32/shellrecyclebin/ - copied from r71220, trunk/reactos/sdk/lib/recyclebin/ Removed: trunk/reactos/sdk/lib/recyclebin/ Modified: trunk/reactos/dll/win32/shell32/CMakeLists.txt trunk/reactos/dll/win32/shell32/precomp.h trunk/reactos/dll/win32/shell32/wine/shellord.c trunk/reactos/sdk/lib/CMakeLists.txt Modified: trunk/reactos/dll/win32/shell32/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/CMakeLists.txt?rev=71243=71242=71243=diff == --- trunk/reactos/dll/win32/shell32/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/CMakeLists.txt [iso-8859-1] Tue May 3 14:36:04 2016 @@ -2,6 +2,7 @@ add_subdirectory(shelldesktop) add_subdirectory(shellmenu) +add_subdirectory(shellrecyclebin) set_cpp(WITH_RUNTIME) spec2def(shell32.dll shell32.spec ADD_IMPORTLIB) @@ -19,7 +20,6 @@ -D_WINE) include_directories( -${REACTOS_SOURCE_DIR}/sdk/lib/recyclebin ${REACTOS_SOURCE_DIR}/sdk/lib/atl ${REACTOS_SOURCE_DIR}) Modified: trunk/reactos/dll/win32/shell32/precomp.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/precomp.h?rev=71243=71242=71243=diff == --- trunk/reactos/dll/win32/shell32/precomp.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/precomp.h [iso-8859-1] Tue May 3 14:36:04 2016 @@ -20,7 +20,6 @@ #include #include #include -#include #include #include #include @@ -41,6 +40,7 @@ #include +#include "shellrecyclebin/recyclebin.h" #include "wine/pidl.h" #include "debughlp.h" #include "wine/shell32_main.h" Modified: trunk/reactos/dll/win32/shell32/wine/shellord.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/wine/shellord.c?rev=71243=71242=71243=diff == --- trunk/reactos/dll/win32/shell32/wine/shellord.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/wine/shellord.c [iso-8859-1] Tue May 3 14:36:04 2016 @@ -34,7 +34,7 @@ #include #include #include -#include +#include "../shellrecyclebin/recyclebin.h" #include #include Modified: trunk/reactos/sdk/lib/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/lib/CMakeLists.txt?rev=71243=71242=71243=diff == --- trunk/reactos/sdk/lib/CMakeLists.txt[iso-8859-1] (original) +++ trunk/reactos/sdk/lib/CMakeLists.txt[iso-8859-1] Tue May 3 14:36:04 2016 @@ -33,7 +33,6 @@ add_subdirectory(nt) add_subdirectory(ppcmmu) add_subdirectory(pseh) -add_subdirectory(recyclebin) if(KDBG) add_subdirectory(rossym)
[ros-diffs] [gadamopoulos] 71242: [SHELL32] - CDesktopFolder: Avoid doing any operation with pidls. Use the internal fs folders instead.
Author: gadamopoulos Date: Tue May 3 13:47:16 2016 New Revision: 71242 URL: http://svn.reactos.org/svn/reactos?rev=71242=rev Log: [SHELL32] - CDesktopFolder: Avoid doing any operation with pidls. Use the internal fs folders instead. Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.h trunk/reactos/dll/win32/shell32/folders/CFSFolder.cpp Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp?rev=71242=71241=71242=diff == --- trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] Tue May 3 13:47:16 2016 @@ -266,7 +266,7 @@ pidlRoot = _ILCreateDesktop(); /* Create the inner fs folder */ -hr = SHCoCreateInstance(NULL, _ShellFSFolder, NULL, IID_PPV_ARG(IShellFolder, _DesktopFSFolder)); +hr = SHCoCreateInstance(NULL, _ShellFSFolder, NULL, IID_PPV_ARG(IShellFolder2, _DesktopFSFolder)); if (FAILED(hr)) return hr; @@ -280,7 +280,7 @@ hr = ppf3->InitializeEx(NULL, pidlRoot, ); /* Create the inner shared fs folder */ -hr = SHCoCreateInstance(NULL, _ShellFSFolder, NULL, IID_PPV_ARG(IShellFolder, _SharedDesktopFSFolder)); +hr = SHCoCreateInstance(NULL, _ShellFSFolder, NULL, IID_PPV_ARG(IShellFolder2, _SharedDesktopFSFolder)); if (FAILED(hr)) return hr; @@ -297,6 +297,25 @@ sPathTarget = (LPWSTR)SHAlloc((wcslen(szMyPath) + 1) * sizeof(WCHAR)); wcscpy(sPathTarget, szMyPath); return S_OK; +} + +HRESULT CDesktopFolder::_GetSFFromPidl(LPCITEMIDLIST pidl, IShellFolder2** psf) +{ +WCHAR szFileName[MAX_PATH]; + +lstrcpynW(szFileName, sPathTarget, MAX_PATH - 1); +PathAddBackslashW(szFileName); +int cLen = wcslen(szFileName); + +if (!_ILSimpleGetTextW(pidl, szFileName + cLen, MAX_PATH - cLen)) +return E_FAIL; + +ERR("%S\n", szFileName); + +if (GetFileAttributes(szFileName) == INVALID_FILE_ATTRIBUTES) +return m_SharedDesktopFSFolder->QueryInterface(IID_PPV_ARG(IShellFolder2, psf)); +else +return m_DesktopFSFolder->QueryInterface(IID_PPV_ARG(IShellFolder2, psf)); } /** @@ -394,14 +413,7 @@ { if (pdwAttributes && *pdwAttributes) { -if (_ILIsMyComputer(pidlTemp)) -*pdwAttributes &= dwMyComputerAttributes; -else if (_ILIsNetHood(pidlTemp)) -*pdwAttributes &= dwMyNetPlacesAttributes; -else if (_ILIsSpecialFolder(pidlTemp)) -SHELL32_GetGuidItemAttributes(this, pidlTemp, pdwAttributes); -else if(_ILIsFolder(pidlTemp) || _ILIsValue(pidlTemp)) -SHELL32_GetFSItemAttributes(this, pidlTemp, pdwAttributes); +GetAttributesOf(1, , pdwAttributes); } } } @@ -439,7 +451,12 @@ if (_ILIsSpecialFolder(pidl)) return SHELL32_BindToGuidItem(pidlRoot, pidl, pbcReserved, riid, ppvOut); -return m_DesktopFSFolder->BindToObject(pidl, pbcReserved, riid, ppvOut ); +CComPtr psf; +HRESULT hr = _GetSFFromPidl(pidl, ); +if (FAILED_UNEXPECTEDLY(hr)) +return hr; + +return psf->BindToObject(pidl, pbcReserved, riid, ppvOut); } /** @@ -555,8 +572,15 @@ *rgfInOut &= dwMyNetPlacesAttributes; else if (_ILIsSpecialFolder(apidl[i])) SHELL32_GetGuidItemAttributes(this, apidl[i], rgfInOut); -else if(_ILIsFolder(apidl[i]) || _ILIsValue(apidl[i])) -SHELL32_GetFSItemAttributes(this, apidl[i], rgfInOut); +else if (_ILIsFolder(apidl[i]) || _ILIsValue(apidl[i])) +{ +CComPtr psf; +HRESULT hr = _GetSFFromPidl(apidl[i], ); +if (FAILED_UNEXPECTEDLY(hr)) +continue; + +psf->GetAttributesOf(1, [i], rgfInOut); +} else ERR("Got an unknown pidl type!!!\n"); } @@ -600,6 +624,16 @@ *ppvOut = NULL; +if (cidl == 1 && !_ILIsSpecialFolder(apidl[0])) +{ +CComPtr psf; +HRESULT hr = _GetSFFromPidl(apidl[0], ); +if (FAILED_UNEXPECTEDLY(hr)) +return hr; + +return psf->GetUIObjectOf(hwndOwner, cidl, apidl, riid, prgfInOut, ppvOut); +} + if (IsEqualIID (riid, IID_IContextMenu)) { hr = CDefFolderMenu_Create2(pidlRoot, hwndOwner, cidl, apidl, (IShellFolder *)this, NULL, 0, NULL, (IContextMenu **)); @@ -611,19 +645,6 @@ else if ((IsEqualIID (riid,
[ros-diffs] [tfaber] 71241: [0.4.1] - Merge the fix to NtSetValueKey in r71232/r71236 (ROSTESTS-200)
Author: tfaber Date: Tue May 3 13:07:03 2016 New Revision: 71241 URL: http://svn.reactos.org/svn/reactos?rev=71241=rev Log: [0.4.1] - Merge the fix to NtSetValueKey in r71232/r71236 (ROSTESTS-200) Added: branches/ros-branch-0_4_1/rostests/apitests/ntdll/NtSetValueKey.c - copied unchanged from r71232, trunk/rostests/apitests/ntdll/NtSetValueKey.c Modified: branches/ros-branch-0_4_1/reactos/ (props changed) branches/ros-branch-0_4_1/reactos/ntoskrnl/config/ntapi.c branches/ros-branch-0_4_1/rostests/ (props changed) branches/ros-branch-0_4_1/rostests/apitests/ntdll/CMakeLists.txt branches/ros-branch-0_4_1/rostests/apitests/ntdll/testlist.c branches/ros-branch-0_4_1/rostests/winetests/reg/reg.c Propchange: branches/ros-branch-0_4_1/reactos/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 13:07:03 2016 @@ -20,3 +20,4 @@ /branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859 /branches/usb-bringup-trunk:55019-55543,55548-4,6-55567 /branches/wlan-bringup:54809-54998 +/trunk/reactos:71232 Modified: branches/ros-branch-0_4_1/reactos/ntoskrnl/config/ntapi.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/reactos/ntoskrnl/config/ntapi.c?rev=71241=71240=71241=diff == --- branches/ros-branch-0_4_1/reactos/ntoskrnl/config/ntapi.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/reactos/ntoskrnl/config/ntapi.c [iso-8859-1] Tue May 3 13:07:03 2016 @@ -630,11 +630,11 @@ Data = NULL; /* Probe and copy the data */ -if ((PreviousMode != KernelMode) && Data) +if ((PreviousMode != KernelMode) && (DataSize != 0)) { PVOID DataCopy = ExAllocatePoolWithTag(PagedPool, DataSize, TAG_CM); if (!DataCopy) -return STATUS_NO_MEMORY; +return STATUS_INSUFFICIENT_RESOURCES; _SEH2_TRY { ProbeForRead(Data, DataSize, 1); Propchange: branches/ros-branch-0_4_1/rostests/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 3 13:07:03 2016 @@ -1,2 +1,3 @@ /branches/GSoC_2011/KMTestSuite:51165-53670 /branches/ros-amd64-bringup/rostests:44459,44462,44537 +/trunk/rostests:71232,71236 Modified: branches/ros-branch-0_4_1/rostests/apitests/ntdll/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/rostests/apitests/ntdll/CMakeLists.txt?rev=71241=71240=71241=diff == --- branches/ros-branch-0_4_1/rostests/apitests/ntdll/CMakeLists.txt [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/rostests/apitests/ntdll/CMakeLists.txt [iso-8859-1] Tue May 3 13:07:03 2016 @@ -18,6 +18,7 @@ NtQuerySystemEnvironmentValue.c NtQueryVolumeInformationFile.c NtSaveKey.c +NtSetValueKey.c RtlAllocateHeap.c RtlBitmap.c RtlCopyMappedMemory.c Modified: branches/ros-branch-0_4_1/rostests/apitests/ntdll/testlist.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/rostests/apitests/ntdll/testlist.c?rev=71241=71240=71241=diff == --- branches/ros-branch-0_4_1/rostests/apitests/ntdll/testlist.c [iso-8859-1] (original) +++ branches/ros-branch-0_4_1/rostests/apitests/ntdll/testlist.c [iso-8859-1] Tue May 3 13:07:03 2016 @@ -21,6 +21,7 @@ extern void func_NtQuerySystemEnvironmentValue(void); extern void func_NtQueryVolumeInformationFile(void); extern void func_NtSaveKey(void); +extern void func_NtSetValueKey(void); extern void func_NtSystemInformation(void); extern void func_RtlAllocateHeap(void); extern void func_RtlBitmap(void); @@ -63,6 +64,7 @@ { "NtQuerySystemEnvironmentValue", func_NtQuerySystemEnvironmentValue }, { "NtQueryVolumeInformationFile", func_NtQueryVolumeInformationFile }, { "NtSaveKey", func_NtSaveKey}, +{ "NtSetValueKey", func_NtSetValueKey}, { "NtSystemInformation",func_NtSystemInformation }, { "RtlAllocateHeap",func_RtlAllocateHeap }, { "RtlBitmapApi", func_RtlBitmap }, Modified: branches/ros-branch-0_4_1/rostests/winetests/reg/reg.c URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_1/rostests/winetests/reg/reg.c?rev=71241=71240=71241=diff == --- branches/ros-branch-0_4_1/rostests/winetests/reg/reg.c
[ros-diffs] [tfaber] 71239: [WIN32K:NTUSER] - In IntDesktopObjectDelete, correctly handle the case where pDeskInfo could not be allocated CORE-11124
Author: tfaber Date: Tue May 3 12:38:41 2016 New Revision: 71239 URL: http://svn.reactos.org/svn/reactos?rev=71239=rev Log: [WIN32K:NTUSER] - In IntDesktopObjectDelete, correctly handle the case where pDeskInfo could not be allocated CORE-11124 Modified: trunk/reactos/win32ss/user/ntuser/desktop.c Modified: trunk/reactos/win32ss/user/ntuser/desktop.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/ntuser/desktop.c?rev=71239=71238=71239=diff == --- trunk/reactos/win32ss/user/ntuser/desktop.c [iso-8859-1] (original) +++ trunk/reactos/win32ss/user/ntuser/desktop.c [iso-8859-1] Tue May 3 12:38:41 2016 @@ -151,10 +151,12 @@ TRACE("Deleting desktop object 0x%p\n", pdesk); -ASSERT(pdesk->pDeskInfo->spwnd->spwndChild == NULL); - -if (pdesk->pDeskInfo->spwnd) +if (pdesk->pDeskInfo && +pdesk->pDeskInfo->spwnd) +{ +ASSERT(pdesk->pDeskInfo->spwnd->spwndChild == NULL); co_UserDestroyWindow(pdesk->pDeskInfo->spwnd); +} if (pdesk->spwndMessage) co_UserDestroyWindow(pdesk->spwndMessage);
[ros-diffs] [gadamopoulos] 71237: [SHELL32] - lnk files are .. files so don't pretend that CDrivesFolder and CControlPanelFolder can contain lnk files. - Don't create a full pidl just to parse it righ
Author: gadamopoulos Date: Tue May 3 09:15:36 2016 New Revision: 71237 URL: http://svn.reactos.org/svn/reactos?rev=71237=rev Log: [SHELL32] - lnk files are .. files so don't pretend that CDrivesFolder and CControlPanelFolder can contain lnk files. - Don't create a full pidl just to parse it right away (which is a costly operation) when an IShellLink is queried from a folder. - Fix a bug in CDesktopFolder::GetDisplayNameOf that was exposed by changes above. Modified: trunk/reactos/dll/win32/shell32/CShellLink.cpp trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp trunk/reactos/dll/win32/shell32/folders/CFSFolder.cpp trunk/reactos/dll/win32/shell32/wine/shell32_main.h trunk/reactos/dll/win32/shell32/wine/shellord.c Modified: trunk/reactos/dll/win32/shell32/CShellLink.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/CShellLink.cpp?rev=71237=71236=71237=diff == --- trunk/reactos/dll/win32/shell32/CShellLink.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/CShellLink.cpp [iso-8859-1] Tue May 3 09:15:36 2016 @@ -2231,33 +2231,25 @@ /** * IShellLink_ConstructFromFile */ -HRESULT WINAPI IShellLink_ConstructFromFile(IUnknown *pUnkOuter, REFIID riid, LPCITEMIDLIST pidl, LPVOID *ppv) -{ -CComPtr psl; - -HRESULT hr = CShellLink::_CreatorClass::CreateInstance(NULL, riid, (void**)); - -if (SUCCEEDED(hr)) -{ -CComPtr ppf; - -*ppv = NULL; - -hr = psl->QueryInterface(IID_PPV_ARG(IPersistFile, )); - -if (SUCCEEDED(hr)) -{ -WCHAR path[MAX_PATH]; - -if (SHGetPathFromIDListW(pidl, path)) -hr = ppf->Load(path, 0); -else -hr = E_FAIL; - -if (SUCCEEDED(hr)) -*ppv = psl.Detach(); -} -} - -return hr; -} +HRESULT WINAPI IShellLink_ConstructFromPath(WCHAR *path, REFIID riid, LPVOID *ppv) +{ +CComPtr ppf; +HRESULT hr = CShellLink::_CreatorClass::CreateInstance(NULL, IID_PPV_ARG(IPersistFile, )); +if (FAILED(hr)) +return hr; + +hr = ppf->Load(path, 0); +if (FAILED(hr)) +return hr; + +return ppf->QueryInterface(riid, ppv); +} + +HRESULT WINAPI IShellLink_ConstructFromFile(IShellFolder * psf, LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv) +{ +WCHAR path[MAX_PATH]; +if (!ILGetDisplayNameExW(psf, pidl, path, 0)) +return E_FAIL; + +return IShellLink_ConstructFromPath(path, riid, ppv); +} Modified: trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp?rev=71237=71236=71237=diff == --- trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp [iso-8859-1] Tue May 3 09:15:36 2016 @@ -472,7 +472,6 @@ HRESULT WINAPI CControlPanelFolder::GetUIObjectOf(HWND hwndOwner, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, REFIID riid, UINT * prgfInOut, LPVOID * ppvOut) { -LPITEMIDLIST pidl; LPVOID pObj = NULL; HRESULT hr = E_INVALIDARG; @@ -502,12 +501,6 @@ hr = IDataObject_Constructor(hwndOwner, pidlRoot, apidl, cidl, (IDataObject **)); } else if ((IsEqualIID(riid, IID_IExtractIconA) || IsEqualIID(riid, IID_IExtractIconW)) && (cidl == 1)) { hr = CCPLExtractIcon_CreateInstance(this, apidl[0], riid, ); - -} else if ((IsEqualIID(riid, IID_IShellLinkW) || IsEqualIID(riid, IID_IShellLinkA)) - && (cidl == 1)) { -pidl = ILCombine(pidlRoot, apidl[0]); -hr = IShellLink_ConstructFromFile(NULL, riid, pidl, (LPVOID*)); -SHFree(pidl); } else { hr = E_NOINTERFACE; } Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp?rev=71237=71236=71237=diff == --- trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] Tue May 3 09:15:36 2016 @@ -589,7 +589,6 @@ UINT *prgfInOut, LPVOID *ppvOut) { -LPITEMIDLIST pidl; LPVOID pObj = NULL; HRESULT hr = E_INVALIDARG; @@ -624,9 +623,7 @@ else if ((IsEqualIID(riid, IID_IShellLinkW) || IsEqualIID(riid, IID_IShellLinkA)) && (cidl == 1)) { -