зеркало из https://github.com/mozilla/gecko-dev.git
fixing bug 103242 - component-specific timing dependency sections don't get run. r=ssu, sr=dveditz. affects only windows platforms.
This commit is contained in:
Родитель
08c99a8091
Коммит
50ea82c092
|
@ -2810,7 +2810,7 @@ void DlgSequenceNext()
|
|||
DeleteFile(szInstallLogFile);
|
||||
|
||||
/* PRE_DOWNLOAD process file manipulation functions */
|
||||
ProcessFileOps(T_PRE_DOWNLOAD, NULL);
|
||||
ProcessFileOpsForAll(T_PRE_DOWNLOAD);
|
||||
|
||||
if(RetrieveArchives() == WIZ_OK)
|
||||
{
|
||||
|
@ -2819,9 +2819,9 @@ void DlgSequenceNext()
|
|||
SetTurboArgs();
|
||||
|
||||
/* POST_DOWNLOAD process file manipulation functions */
|
||||
ProcessFileOps(T_POST_DOWNLOAD, NULL);
|
||||
ProcessFileOpsForAll(T_POST_DOWNLOAD);
|
||||
/* PRE_XPCOM process file manipulation functions */
|
||||
ProcessFileOps(T_PRE_XPCOM, NULL);
|
||||
ProcessFileOpsForAll(T_PRE_XPCOM);
|
||||
|
||||
if(ProcessXpcomFile() != FO_SUCCESS)
|
||||
{
|
||||
|
@ -2835,9 +2835,9 @@ void DlgSequenceNext()
|
|||
}
|
||||
|
||||
/* POST_XPCOM process file manipulation functions */
|
||||
ProcessFileOps(T_POST_XPCOM, NULL);
|
||||
ProcessFileOpsForAll(T_POST_XPCOM);
|
||||
/* PRE_SMARTUPDATE process file manipulation functions */
|
||||
ProcessFileOps(T_PRE_SMARTUPDATE, NULL);
|
||||
ProcessFileOpsForAll(T_PRE_SMARTUPDATE);
|
||||
|
||||
/* save the installer files in the local machine */
|
||||
if(diDownloadOptions.bSaveInstaller)
|
||||
|
@ -2867,16 +2867,16 @@ void DlgSequenceNext()
|
|||
UpdateJSProxyInfo();
|
||||
|
||||
/* POST_SMARTUPDATE process file manipulation functions */
|
||||
ProcessFileOps(T_POST_SMARTUPDATE, NULL);
|
||||
ProcessFileOpsForAll(T_POST_SMARTUPDATE);
|
||||
/* PRE_LAUNCHAPP process file manipulation functions */
|
||||
ProcessFileOps(T_PRE_LAUNCHAPP, NULL);
|
||||
ProcessFileOpsForAll(T_PRE_LAUNCHAPP);
|
||||
|
||||
LaunchApps();
|
||||
|
||||
/* POST_LAUNCHAPP process file manipulation functions */
|
||||
ProcessFileOps(T_POST_LAUNCHAPP, NULL);
|
||||
ProcessFileOpsForAll(T_POST_LAUNCHAPP);
|
||||
/* DEPEND_REBOOT process file manipulation functions */
|
||||
ProcessFileOps(T_DEPEND_REBOOT, NULL);
|
||||
ProcessFileOpsForAll(T_DEPEND_REBOOT);
|
||||
ClearWinRegUninstallFileDeletion();
|
||||
if(!gbIgnoreProgramFolderX)
|
||||
ProcessProgramFolderShowCmd();
|
||||
|
|
|
@ -263,6 +263,30 @@ void ProcessFileOps(DWORD dwTiming, char *szSectionPrefix)
|
|||
ProcessSetVersionRegistry(dwTiming, szSectionPrefix);
|
||||
}
|
||||
|
||||
void ProcessFileOpsForSelectedComponents(DWORD dwTiming)
|
||||
{
|
||||
DWORD dwIndex0;
|
||||
siC *siCObject = NULL;
|
||||
|
||||
dwIndex0 = 0;
|
||||
siCObject = SiCNodeGetObject(dwIndex0, TRUE, AC_ALL);
|
||||
while(siCObject)
|
||||
{
|
||||
if(siCObject->dwAttributes & SIC_SELECTED)
|
||||
/* Since the archive is selected, we need to process the file ops here */
|
||||
ProcessFileOps(dwTiming, siCObject->szReferenceName);
|
||||
|
||||
++dwIndex0;
|
||||
siCObject = SiCNodeGetObject(dwIndex0, TRUE, AC_ALL);
|
||||
} /* while(siCObject) */
|
||||
}
|
||||
|
||||
void ProcessFileOpsForAll(DWORD dwTiming)
|
||||
{
|
||||
ProcessFileOps(dwTiming, NULL);
|
||||
ProcessFileOpsForSelectedComponents(dwTiming);
|
||||
}
|
||||
|
||||
int VerifyArchive(LPSTR szArchive)
|
||||
{
|
||||
void *vZip;
|
||||
|
|
|
@ -96,6 +96,8 @@ void AppendWinReg(HKEY hkRootKey,
|
|||
BOOL bLogForUninstall,
|
||||
BOOL bDnu);
|
||||
HRESULT CleanupArgsRegistry();
|
||||
void ProcessFileOpsForSelectedComponents(DWORD dwTiming);
|
||||
void ProcessFileOpsForAll(DWORD dwTiming);
|
||||
|
||||
#endif /* _IFUNCNS_H_ */
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче