diff options
author | Silenio Quarti | 2013-07-24 18:22:50 +0000 |
---|---|---|
committer | Silenio Quarti | 2013-07-24 18:22:50 +0000 |
commit | 14a203b0e1f21a0e4e2b093323e617d0caa4cd92 (patch) | |
tree | d49163756af97f2b2b5dad9d9a08e84f03adaedd /bundles/org.eclipse.equinox.executable | |
parent | a7bb93e965ee40f221a1eaeb77a94aba955820e8 (diff) | |
download | rt.equinox.framework-14a203b0e1f21a0e4e2b093323e617d0caa4cd92.tar.gz rt.equinox.framework-14a203b0e1f21a0e4e2b093323e617d0caa4cd92.tar.xz rt.equinox.framework-14a203b0e1f21a0e4e2b093323e617d0caa4cd92.zip |
Bug 413663 - Eclipse doesn't restart after switch workspace
Diffstat (limited to 'bundles/org.eclipse.equinox.executable')
-rw-r--r-- | bundles/org.eclipse.equinox.executable/library/eclipseShm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/bundles/org.eclipse.equinox.executable/library/eclipseShm.c b/bundles/org.eclipse.equinox.executable/library/eclipseShm.c index e46c1f5bc..0aaadbe2b 100644 --- a/bundles/org.eclipse.equinox.executable/library/eclipseShm.c +++ b/bundles/org.eclipse.equinox.executable/library/eclipseShm.c @@ -29,7 +29,7 @@ int createSharedData(_TCHAR** id, int size) { if (id != NULL) { *id = malloc(18 * sizeof(_TCHAR)); #ifdef WIN64 - _stprintf(*id, _T_ECLIPSE("%lx_%lx"), GetCurrentProcessId(), (DWORDLONG) mapHandle); + _stprintf(*id, _T_ECLIPSE("%lx_%I64x"), GetCurrentProcessId(), (DWORDLONG) mapHandle); #else _stprintf(*id, _T_ECLIPSE("%lx_%lx"), GetCurrentProcessId(), (DWORD) mapHandle); #endif @@ -44,10 +44,11 @@ static int getShmID(const _TCHAR* id, LPDWORD processID, LPHANDLE handle) { DWORD i1; #ifdef WIN64 DWORDLONG i2; + if (_stscanf(id, _T_ECLIPSE("%lx_%I64x"), &i1, &i2) != 2) return -1; #else DWORD i2; -#endif if (_stscanf(id, _T_ECLIPSE("%lx_%lx"), &i1, &i2) != 2) return -1; +#endif *processID = (DWORD)i1; *handle = (HANDLE)i2; return 0; |