@@ -178,8 +178,11 @@ void Startup()
178
178
g_SpatialSpace = new ISpatial_DB (" Spatial obj" );
179
179
g_SpatialSpacePhysic = new ISpatial_DB (" Spatial phys" );
180
180
// Destroy LOGO
181
- DestroyWindow (logoWindow);
182
- logoWindow = nullptr ;
181
+ if (logoWindow != nullptr )
182
+ {
183
+ DestroyWindow (logoWindow);
184
+ logoWindow = nullptr ;
185
+ }
183
186
// Main cycle
184
187
Memory.mem_usage ();
185
188
Device.Run ();
@@ -320,18 +323,21 @@ int RunApplication(pcstr commandLine)
320
323
}
321
324
#endif
322
325
// SetThreadAffinityMask(GetCurrentThread(), 1);
323
- logoWindow = CreateDialog (GetModuleHandle (NULL ), MAKEINTRESOURCE (IDD_STARTUP), nullptr , LogoWndProc);
324
- HWND logoPicture = GetDlgItem (logoWindow, IDC_STATIC_LOGO);
325
- RECT logoRect;
326
- GetWindowRect (logoPicture, &logoRect);
326
+ if (strstr (commandLine, " -nosplash" ) == 0 )
327
+ {
328
+ logoWindow = CreateDialog (GetModuleHandle (NULL ), MAKEINTRESOURCE (IDD_STARTUP), nullptr , LogoWndProc);
329
+ HWND logoPicture = GetDlgItem (logoWindow, IDC_STATIC_LOGO);
330
+ RECT logoRect;
331
+ GetWindowRect (logoPicture, &logoRect);
327
332
#ifndef DEBUG
328
- HWND prevWindow = HWND_TOPMOST;
333
+ HWND prevWindow = ( strstr (commandLine, " -splashnotop " ) == NULL ) ? HWND_TOPMOST : HWND_NOTOPMOST ;
329
334
#else
330
- HWND prevWindow = HWND_NOTOPMOST;
335
+ HWND prevWindow = HWND_NOTOPMOST;
331
336
#endif
332
- SetWindowPos (logoWindow, prevWindow, 0 , 0 , logoRect.right - logoRect.left , logoRect.bottom - logoRect.top ,
333
- SWP_NOMOVE | SWP_SHOWWINDOW);
334
- UpdateWindow (logoWindow);
337
+ SetWindowPos (logoWindow, prevWindow, 0 , 0 , logoRect.right - logoRect.left , logoRect.bottom - logoRect.top ,
338
+ SWP_NOMOVE | SWP_SHOWWINDOW);
339
+ UpdateWindow (logoWindow);
340
+ }
335
341
*g_sLaunchOnExit_app = 0 ;
336
342
*g_sLaunchOnExit_params = 0 ;
337
343
0 commit comments