#30096 - App crashes in Java at launch on Ja systems.  Need to deliver
           international version of jre.
  #30186 - installer needs to apply patch to jre1.3

a=jar
r=sgehani
This commit is contained in:
ssu%netscape.com 2000-03-03 08:15:24 +00:00
Родитель e0b7a51df5
Коммит f967a579be
6 изменённых файлов: 43 добавлений и 5 удалений

Просмотреть файл

@ -698,6 +698,19 @@ void InvalidateLBCheckbox(HWND hwndListBox)
// checked/unchecked checkbox.
InvalidateRect(hwndListBox, &rcCheckArea, TRUE);
}
void SunJavaDependencyHack(DWORD dwIndex, BOOL bSelected)
{
DWORD dwPatchIndex;
siC *siCTemp = NULL;
siCTemp = SiCNodeGetObject(dwIndex, FALSE);
if(lstrcmpi("Sun Java 2", siCTemp->szDescriptionShort) == 0)
{
if((dwPatchIndex = SiCNodeGetIndexDS("Sun Java 2 Patch")) != -1)
SiCNodeSetAttributes(dwPatchIndex, SIC_SELECTED, bSelected, TRUE);
}
}
void ToggleCheck(HWND hwndListBox, DWORD dwIndex)
{
@ -708,6 +721,7 @@ void ToggleCheck(HWND hwndListBox, DWORD dwIndex)
if(SiCNodeGetAttributes(dwIndex, FALSE) & SIC_SELECTED)
{
SiCNodeSetAttributes(dwIndex, SIC_SELECTED, FALSE, FALSE);
SunJavaDependencyHack(dwIndex, FALSE);
}
else
{
@ -716,6 +730,8 @@ void ToggleCheck(HWND hwndListBox, DWORD dwIndex)
while(bMoreToResolve)
bMoreToResolve = ResolveDependencies(-1);
SunJavaDependencyHack(dwIndex, TRUE);
}
InvalidateLBCheckbox(hwndListBox);

Просмотреть файл

@ -50,6 +50,7 @@ void DrawCheck(LPDRAWITEMSTRUCT lpdis);
void InvalidateLBCheckbox(HWND hwndListBox);
void ProcessWindowsMessages(void);
void CheckWizardStateCustom(DWORD dwDefault);
void SunJavaDependencyHack(DWORD dwIndex, BOOL bSelected);
#endif

Просмотреть файл

@ -2196,6 +2196,8 @@ HRESULT ParseComponentAttributes(char *szAttribute)
dwAttributes |= SIC_INVISIBLE;
if(strstr(szBuf, "LAUNCHAPP") != NULL)
dwAttributes |= SIC_LAUNCHAPP;
if(strstr(szBuf, "DOWNLOAD_ONLY") != NULL)
dwAttributes |= SIC_DOWNLOAD_ONLY;
return(dwAttributes);
}
@ -3728,6 +3730,13 @@ HRESULT DecryptVariable(LPSTR szVariable, DWORD dwVariableSize)
lstrcpy(szVariable, szBuf);
}
}
else if(lstrcmpi(szVariable, "JRE PATH") == 0)
{
/* Locate the "c:\Program Files\JavaSoft\JRE\1.3" directory */
GetWinReg(HKEY_LOCAL_MACHINE, "Software\\JavaSoft\\Java Plug-in\\1.3", "JavaHome", szVariable, dwVariableSize);
if(*szVariable == '\0')
return(FALSE);
}
else if(lstrcmpi(szVariable, "SETUP PATH") == 0)
{
lstrcpy(szVariable, sgProduct.szPath);

Просмотреть файл

@ -162,6 +162,7 @@ HRESULT CleanupCoreFile()
HRESULT ProcessUncompressFile(DWORD dwTiming)
{
DWORD dwIndex;
BOOL bOnlyIfExists;
char szIndex[MAX_BUF];
char szBuf[MAX_BUF];
char szSection[MAX_BUF];
@ -180,11 +181,19 @@ HRESULT ProcessUncompressFile(DWORD dwTiming)
DecryptString(szSource, szBuf);
GetPrivateProfileString(szSection, "Destination", "", szBuf, MAX_BUF, szFileIniConfig);
DecryptString(szDestination, szBuf);
GetPrivateProfileString(szSection, "Only If Exists", "", szBuf, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szBuf, "TRUE") == 0)
bOnlyIfExists = TRUE;
else
bOnlyIfExists = FALSE;
GetPrivateProfileString(szSection, "Message", "", szBuf, MAX_BUF, szFileIniConfig);
ShowMessage(szBuf, TRUE);
FileUncompress(szSource, szDestination);
ShowMessage(szBuf, FALSE);
if((!bOnlyIfExists) || (bOnlyIfExists && FileExists(szDestination)))
{
GetPrivateProfileString(szSection, "Message", "", szBuf, MAX_BUF, szFileIniConfig);
ShowMessage(szBuf, TRUE);
FileUncompress(szSource, szDestination);
ShowMessage(szBuf, FALSE);
}
}
++dwIndex;

Просмотреть файл

@ -114,6 +114,7 @@ typedef int PRInt32;
#define SIC_INVISIBLE 2
#define SIC_LAUNCHAPP 4
#define SIC_DOWNLOAD_REQUIRED 8
#define SIC_DOWNLOAD_ONLY 16
/* OS: Operating System */
#define OS_WIN95_DEBUTE 1

Просмотреть файл

@ -183,7 +183,9 @@ HRESULT SmartUpdateJars()
while(siCObject)
{
/* launch smartupdate engine for earch jar to be installed */
if((siCObject->dwAttributes & SIC_SELECTED) && !(siCObject->dwAttributes & SIC_LAUNCHAPP))
if((siCObject->dwAttributes & SIC_SELECTED) &&
!(siCObject->dwAttributes & SIC_LAUNCHAPP) &&
!(siCObject->dwAttributes & SIC_DOWNLOAD_ONLY))
{
lFileCounter = 0;
lBarberCounter = 0;