Compare commits

...
Author SHA1 Message Date
XenhatandGitHub 77da0614ac Add information about my clean script 2018-07-05 18:57:33 -04:00
ge0rdiandXenhat 9c6fadb828 Fix for recent Windows Insider builds (#11) (#33)
CMenuContainer object was not destroyed when Start Menu window was closed.

It was referenced by IFrameworkInputPane::AdviseWithHWND call (to be able
to receive input pane notifications). The problem was that dereferencing
(IFrameworkInputPane::Unadvise) was called from CMenuContainer destructor
that is called only when object's refcount goes to zero.

In previous Windows versions it somehow worked, because for some reason
CMenuContainer object was no longer referenced when its window was
destroyed.

Apparently there was some change in IFrameworkInputPane handling in recent
Windows builds (starting with 17692).

To fix the issue we have to call IFrameworkInputPane::Unadvise() when
CMenuContainer's window is about to be destroyed.
2018-07-05 18:50:50 -04:00
XenhatandGitHub 8a5ad15317 Update source code version to 4.4.102 to split from Classic Shell versions (#29) 2018-07-01 18:36:45 -04:00
coddecandGitHub ef2d92bb84 Add pre-release (development/beta release badge) 2018-06-29 23:31:56 +10:00
ge0rdiandge0rdi cf2f874896 Fix ClassicStartMenu.rc 2018-06-29 14:53:23 +02:00
6 changed files with 29 additions and 26 deletions
@@ -54,10 +54,10 @@ END
// Solution loading fail-safe
#ifndef _PRODUCT_VERSION
#define _PRODUCT_VERSION 4.3.2
#define _PRODUCT_VERSION 4.4.102
#endif
#ifndef _PRODUCT_VERSION_STR
#define _PRODUCT_VERSION_STR "4.3.2"
#define _PRODUCT_VERSION_STR "4.4.102"
#endif
VS_VERSION_INFO VERSIONINFO
@@ -116,5 +116,3 @@ IDI_APPICON ICON "..\\ClassicStartSetup\\ClassicS
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
_PRODUCT_VERSOIN
@@ -770,9 +770,6 @@ CMenuContainer::~CMenuContainer( void )
if (m_SearchIcons)
DeleteObject(m_SearchIcons);
if (m_pProgramsTree) m_pProgramsTree->Release();
if (s_pFrameworkInputPane && m_InputCookie)
s_pFrameworkInputPane->Unadvise(m_InputCookie);
}
void CMenuContainer::AddFirstFolder( IShellItem *pFolder, std::vector<MenuItem> &items, int options )
@@ -6215,6 +6212,10 @@ LRESULT CMenuContainer::OnDestroy( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL
CloseThemeData(m_ScrollTheme);
m_ScrollTheme=NULL;
}
if (s_pFrameworkInputPane && m_InputCookie)
s_pFrameworkInputPane->Unadvise(m_InputCookie);
return 0;
}
@@ -7,7 +7,7 @@ set PATH=C:\Program Files\7-Zip\;C:\Program Files (x86)\HTML Help Workshop;C:\Pr
rem git clean -dfx
@rem Default version
@set CS_VERSION=4.3.2
@set CS_VERSION=4.4.102
@if defined APPVEYOR_BUILD_VERSION (
@set CS_VERSION=%APPVEYOR_BUILD_VERSION%
+1 -1
View File
@@ -59,4 +59,4 @@ https://github.com/passionate-coder/Classic-Start/releases
---
[![GitHub Release](https://img.shields.io/github/release/passionate-coder/Classic-Start.svg)](https://github.com/passionate-coder/Classic-Start/releases) [![Build status](https://ci.appveyor.com/api/projects/status/dib45bf3snylbydy/branch/master?svg=true)](https://ci.appveyor.com/project/passionate-coder/classic-start/branch/master) [![GitQ](https://gitq.com/badge.svg)](https://gitq.com/passionate-coder/Classic-Start) [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/passionate-coder/Disc-Chitchat)
[![GitHub Release](https://img.shields.io/github/release/passionate-coder/Classic-Start.svg)](https://github.com/passionate-coder/Classic-Start/releases) [![GitHub Pre-Release](https://img.shields.io/github/release/passionate-coder/Classic-Start/all.svg)](https://github.com/passionate-coder/Classic-Start/releases) [![Build status](https://ci.appveyor.com/api/projects/status/dib45bf3snylbydy/branch/master?svg=true)](https://ci.appveyor.com/project/passionate-coder/classic-start/branch/master) [![GitQ](https://gitq.com/badge.svg)](https://gitq.com/passionate-coder/Classic-Start) [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/passionate-coder/Disc-Chitchat)
-17
View File
@@ -1,17 +0,0 @@
git rm -f *..lastbuildstate
git rm -f *.dll
git rm -f *.exe
git rm -f *.exp
git rm -f *.iobj
git rm -f *.lastbuildstate
git rm -f *.lib
git rm -f *.log
git rm -f *.ltlog
git rm -f *.ipdb
git rm -f *.obj
git rm -f *.pch
git rm -f *.pdb
git rm -f *.res
git rm -f *.tlog
git rm -f *.adml
git rm -f *.admx
+21
View File
@@ -0,0 +1,21 @@
REM :: This script will forcefully clean the repository of residual cruft from the build process in the offchance I have forgotten
REM :: to include something. It is not perfect but it appears to do the job.
REM :: This is an alternative to 'git reset --hard HEAD' which would destroy local changes.
REM :: - Xenhat
git rm -f *..lastbuildstate
git rm -f *.dll
git rm -f *.exe
git rm -f *.exp
git rm -f *.iobj
git rm -f *.lastbuildstate
git rm -f *.lib
git rm -f *.log
git rm -f *.ltlog
git rm -f *.ipdb
git rm -f *.obj
git rm -f *.pch
git rm -f *.pdb
git rm -f *.res
git rm -f *.tlog
git rm -f *.adml
git rm -f *.admx