This commit is contained in:
Vincent Wei
2020-01-15 17:32:22 +08:00
parent 1b7c1ffaf4
commit d4e066cbc9
14 changed files with 153 additions and 112 deletions

View File

@@ -1,15 +1,15 @@
#! /bin/bash
keyword_list="
license_create
license_destroy
screensaver_create
screensaver_destroy
splash_draw_framework
splash_progress
splash_delay
license_on_input
license_on_timeout
__mg_license_create
__mg_license_destroy
__mg_screensaver_create
__mg_screensaver_destroy
__mg_splash_draw_framework
__mg_splash_progress
__mg_splash_delay
__mg_license_on_input
__mg_license_on_timeout
license_get_processor_id
#\s*include.*license\/c_files.*
#\s*include.*license\.h

View File

@@ -3820,7 +3820,7 @@ HWND GUIAPI CreateMainWindowEx (PMAINWINCREATE pCreateInfo,
#endif
#ifndef _MGRM_PROCESSES
screensaver_create();
__mg_screensaver_create();
#endif
#ifdef _MGSCHEMA_COMPOSITING

View File

@@ -263,7 +263,7 @@ static void default_cb(void *user_data, const char* str)
#endif
}
license_on_input();
__mg_license_on_input();
}
/******************** Low Level Input Operations ******************/

View File

@@ -85,45 +85,45 @@ extern MG_LOCAL BITMAP g_license_bitmaps[];
#define g_bitmap_progressbar g_license_bitmaps[SPLASH_PROGRESSBAR]
#define g_bitmap_progressbar_bk g_license_bitmaps[SPLASH_PROGRESSBAR_BK]
MG_LOCAL void license_create(void);
MG_LOCAL void license_destroy(void);
MG_LOCAL void __mg_license_create(void);
MG_LOCAL void __mg_license_destroy(void);
#else
# define license_create() /* NULL */
# define license_destroy() /* NULL */
# define __mg_license_create() /* NULL */
# define __mg_license_destroy() /* NULL */
#endif /* endif _MG_ENABLE_SPLASH or _MG_ENABLE_SCREENSAVER or _MG_ENABLE_WATERMARK*/
#ifdef _MG_ENABLE_SCREENSAVER
MG_LOCAL void screensaver_create(void);
MG_LOCAL void screensaver_destroy(void);
MG_LOCAL void __mg_screensaver_create(void);
MG_LOCAL void __mg_screensaver_destroy(void);
#else
# define screensaver_create() /* NULL */
# define screensaver_destroy() /* NULL */
# define __mg_screensaver_create() /* NULL */
# define __mg_screensaver_destroy() /* NULL */
#endif
/*
* Splash
*/
#ifdef _MG_ENABLE_SPLASH
MG_LOCAL void splash_draw_framework(void);
MG_LOCAL void splash_progress(void);
MG_LOCAL void splash_delay(void);
MG_LOCAL void __mg_splash_draw_framework(void);
MG_LOCAL void __mg_splash_progress(void);
MG_LOCAL void __mg_splash_delay(void);
#else
# define splash_draw_framework() /* NULL */
# define splash_progress() /* NULL */
# define splash_delay() /* NULL */
# define __mg_splash_draw_framework() /* NULL */
# define __mg_splash_progress() /* NULL */
# define __mg_splash_delay() /* NULL */
#endif /* endif _MG_ENABLE_SPLASH */
/*
* ScreenSaver & Watermark
*/
#if defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK)
MG_LOCAL void license_on_input(void);
MG_LOCAL void license_on_timeout(void);
MG_LOCAL void __mg_license_on_input(void);
MG_LOCAL void __mg_license_on_timeout(void);
#else
# define license_on_input() /* NULL */
# define license_on_timeout() /* NULL */
# define __mg_license_on_input() /* NULL */
# define __mg_license_on_timeout() /* NULL */
#endif /* _MG_ENABLE_SCREENSAVER || _MG_ENABLE_WATERMARK */
/*

View File

@@ -85,17 +85,19 @@ typedef MASKRECT* PMASKRECT;
#define ZOF_TYPE_FLAG_MASK 0xFFF00000
#define ZOF_TYPE_MASK 0xF0000000
#define ZOF_TYPE_DOCKER 0x60000000 /* Since 4.2.0 */
#define ZOF_TYPE_DESKTOP 0x50000000
#define ZOF_TYPE_MENU 0x40000000
#define ZOF_TYPE_GLOBAL 0x30000000
#define ZOF_TYPE_TOPMOST 0x20000000
#define ZOF_TYPE_NORMAL 0x10000000
#define ZOF_TYPE_MENU 0x10000000
#define ZOF_TYPE_SCREENLOCK 0x20000000 /* Since 4.2.0; fixed and only one */
#define ZOF_TYPE_DOCKER 0x30000000 /* Since 4.2.0; fixed and only one */
#define ZOF_TYPE_GLOBAL 0x40000000
#define ZOF_TYPE_TOPMOST 0x50000000
#define ZOF_TYPE_NORMAL 0x60000000
#define ZOF_TYPE_LAUNCHER 0x70000000 /* Since 4.2.0; fixed and only one */
#define ZOF_TYPE_DESKTOP 0x80000000 /* fixed and only one */
#define ZOF_TF_FLAG_MASK 0x0F000000
#define ZOF_TF_MAINWIN 0x01000000
#define ZOF_TF_TOOLWIN 0x02000000
#define ZOF_TF_STUCK 0x04000000
#define ZOF_TF_ALWAYSTOP 0x04000000
#define ZOF_TW_FLAG_MASK 0x00F00000
#define ZOF_TW_TBROUNDCNS 0x00300000

View File

@@ -1636,7 +1636,7 @@ static void dskUpdateDesktopMenu (HMENU hDesktopMenu)
{
pWin = (PMAINWIN)(nodes[slot].fortestinghwnd);
if (pWin && pWin->WinType == TYPE_MAINWIN &&
!(nodes[slot].flags & ZOF_TF_STUCK)) {
!(nodes[slot].flags & ZOF_TF_ALWAYSTOP)) {
if (pWin->dwStyle & WS_VISIBLE)
mii.state = MFS_ENABLED;
else
@@ -2135,7 +2135,7 @@ static LRESULT DesktopWinProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lP
&& __mg_enter_terminategui
#endif
) {
screensaver_destroy();
__mg_screensaver_destroy();
if (hDesktopDC) ReleaseDC (hDesktopDC);
hDesktopDC = 0;

View File

@@ -3061,7 +3061,7 @@ static BOOL _cb_update_dskmenu (void* context,
UPDATA_DSKMENU_INFO* info = (UPDATA_DSKMENU_INFO*) context;
if (node->flags & ZOF_TF_MAINWIN
&& !(node->flags & ZOF_TF_STUCK)) {
&& !(node->flags & ZOF_TF_ALWAYSTOP)) {
if (node->flags & ZOF_VISIBLE)
info->mii.state = MFS_ENABLED;
else
@@ -3548,7 +3548,7 @@ static int srvSesseionMessageHandler (int message, WPARAM wParam, LPARAM lParam)
case MSG_ENDSESSION:
if (SERVER_HAS_NO_MAINWINDOW()) {
screensaver_destroy();
__mg_screensaver_destroy();
if (hDesktopDC) {
ReleaseDC (hDesktopDC);

View File

@@ -1777,9 +1777,12 @@ static int AllocZOrderNode (int cli, HWND hwnd, HWND main_win,
}
}
#if defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK)
#if 1
/* Since 4.2.0. Support for always top znode.
* defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK) */
if (*first == 0
|| (nodes [*first].flags & ZOF_TF_STUCK) != ZOF_TF_STUCK)
|| (nodes [*first].flags & ZOF_TF_ALWAYSTOP) != ZOF_TF_ALWAYSTOP)
{
old_first = *first;
nodes [old_first].prev = free_slot;
@@ -1788,12 +1791,13 @@ static int AllocZOrderNode (int cli, HWND hwnd, HWND main_win,
}
else {
int pre_idx = *first;
while(*first) {
if ((nodes [*first].flags & ZOF_TF_STUCK) == ZOF_TF_STUCK) {
while (*first) {
if ((nodes [*first].flags & ZOF_TF_ALWAYSTOP) == ZOF_TF_ALWAYSTOP) {
pre_idx = *first;
first = &nodes[*first].next;
}
else break;
else
break;
}
old_first = pre_idx;
nodes [free_slot].prev = old_first;
@@ -2147,14 +2151,13 @@ static int FreeZOrderMaskRect (int cli, int idx_znode)
}
static int update_client_window_rgn (int cli, HWND hwnd);
#if defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK)
static int dskMove2Top (int cli, int idx_znode);
static int dskShowWindow (int cli, int idx_znode);
static int dskHideWindow (int cli, int idx_znode);
static ZORDERINFO* _get_zorder_info (int cli);
void dskRefreshAllClient (const RECT* invrc)
#if defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK)
static void dskRefreshAllClient (const RECT* invrc)
{
#if defined(_MGRM_PROCESSES)
if (mgIsServer) {
@@ -2173,7 +2176,7 @@ void dskRefreshAllClient (const RECT* invrc)
#endif
}
int dskCreateTopZOrderNode (int cli, const RECT *rc)
static int dskCreateTopZOrderNode (int cli, const RECT *rc)
{
int idx_znode = 0;
int zt_type = ZOF_VISIBLE | ZOF_TF_MAINWIN;
@@ -2192,12 +2195,13 @@ int dskCreateTopZOrderNode (int cli, const RECT *rc)
return idx_znode;
}
int dskDestroyTopZOrderNode (int cli, int idx_znode)
static int dskDestroyTopZOrderNode (int cli, int idx_znode)
{
return FreeZOrderNode (cli, idx_znode, NULL);
}
#endif /* _MG_ENABLE_SCREENSAVER || _MG_ENABLE_WATERMARK */
int dskSetTopForEver(int cli, int idx_znode, BOOL show)
/*XXX static */int dskSetZNodeAlwaysTop (int cli, int idx_znode)
{
// NUV DWORD type;
ZORDERINFO* zi = _get_zorder_info (cli);
@@ -2219,21 +2223,47 @@ int dskSetTopForEver(int cli, int idx_znode, BOOL show)
/* lock zi for change */
lock_zi_for_change (zi);
nodes[idx_znode].flags |= ZOF_TF_STUCK;
nodes[idx_znode].flags |= ZOF_TF_ALWAYSTOP;
/* unlock zi for change */
unlock_zi_for_change (zi);
if (show) {
dskShowWindow (cli, idx_znode);
return dskMove2Top (cli, idx_znode);
}
else {
return dskHideWindow (cli, idx_znode);
return 0;
}
#ifdef _MG_ENABLE_SCREENSAVER
static int _screensaver_node;
void __mg_screensaver_show(void)
{
dskShowWindow (0, _screensaver_node);
dskMove2Top (0, _screensaver_node);
}
void __mg_screensaver_hide(void)
{
dskHideWindow (0, _screensaver_node);
}
void __mg_screensaver_create(void)
{
/* create screensaver node. */
if (!_screensaver_node) {
RECT rcScr = GetScreenRect();
_screensaver_node = dskCreateTopZOrderNode (0, &rcScr);
dskSetZNodeAlwaysTop (0, _screensaver_node);
dskHideWindow (0, _screensaver_node);
}
}
#endif /* _MG_ENABLE_SCREENSAVER || _MG_ENABLE_WATERMARK */
void __mg_screensaver_destroy(void)
{
/* destroy screensaver node. */
if (_screensaver_node) {
dskDestroyTopZOrderNode(0, _screensaver_node);
_screensaver_node = 0;
}
}
#endif /* defined _MG_ENABLE_SCREENSAVER */
static int dskMove2Top (int cli, int idx_znode)
{
@@ -2322,21 +2352,24 @@ static int dskMove2Top (int cli, int idx_znode)
nodes [nodes [idx_znode].next].prev = nodes [idx_znode].prev;
}
#if defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK)
if (!(*first) || ((nodes [*first].flags & ZOF_TF_STUCK) != ZOF_TF_STUCK))
{
#if 1
/* Since 4.2.0. Support for stuck znode.
* defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK) */
if (!(*first) ||
((nodes [*first].flags & ZOF_TF_ALWAYSTOP) != ZOF_TF_ALWAYSTOP)) {
nodes [idx_znode].prev = nodes[*first].prev;
nodes [idx_znode].next = *first;
nodes [*first].prev = idx_znode;
}
else {
int pre_idx = *first;
while(*first) {
if ((nodes [*first].flags & ZOF_TF_STUCK) == ZOF_TF_STUCK) {
while (*first) {
if ((nodes [*first].flags & ZOF_TF_ALWAYSTOP) == ZOF_TF_ALWAYSTOP) {
pre_idx = *first;
first = &nodes[*first].next;
}
else break;
else
break;
}
nodes [idx_znode].prev = pre_idx;
nodes [idx_znode].next = nodes [pre_idx].next;

View File

@@ -340,7 +340,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
lwe->type = LWETYPE_TIMEOUT;
lwe->count = __mg_timer_counter;
license_on_timeout();
__mg_license_on_timeout();
return 1;
}
@@ -367,7 +367,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
if ( !(oldbutton & IAL_MOUSE_LEFTBUTTON) &&
(button & IAL_MOUSE_LEFTBUTTON) )
{
license_on_input();
__mg_license_on_input();
interval = __mg_timer_counter - time1;
if (interval <= dblclicktime)
@@ -382,7 +382,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
if ( (oldbutton & IAL_MOUSE_LEFTBUTTON) &&
!(button & IAL_MOUSE_LEFTBUTTON) )
{
license_on_input();
__mg_license_on_input();
me->event = ME_LEFTUP;
goto mouseret;
@@ -435,7 +435,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
if (nr_keys == 0)
return 0;
license_on_input();
__mg_license_on_input();
lwe->type = LWETYPE_KEY;
keystate = IAL_GetKeyboardState ();
@@ -654,7 +654,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
lwe->type = LWETYPE_TIMEOUT;
lwe->count = ++timeout_count;
license_on_timeout();
__mg_license_on_timeout();
return 1;
}
@@ -683,7 +683,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
if ( !(oldbutton & IAL_MOUSE_LEFTBUTTON) &&
(button & IAL_MOUSE_LEFTBUTTON) )
{
license_on_input();
__mg_license_on_input();
interval = __mg_timer_counter - time1;
if (interval <= dblclicktime)
@@ -698,7 +698,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
if ( (oldbutton & IAL_MOUSE_LEFTBUTTON) &&
!(button & IAL_MOUSE_LEFTBUTTON) )
{
license_on_input();
__mg_license_on_input();
me->event = ME_LEFTUP;
goto mouseret;
@@ -746,7 +746,7 @@ BOOL kernel_GetLWEvent (int event, PLWEVENT lwe)
}
if (event & IAL_KEYEVENT) {
license_on_input();
__mg_license_on_input();
lwe->type = LWETYPE_KEY;
keystate = IAL_GetKeyboardState ();

View File

@@ -514,9 +514,9 @@ int InitGUI (int argc, const char* agr[])
if (_is_server)
#endif
{
license_create();
splash_draw_framework();
splash_delay();
__mg_license_create();
__mg_splash_draw_framework();
__mg_splash_delay();
}
/* Initialize resource */
@@ -589,7 +589,7 @@ void TerminateGUI (int rcByGUI)
if (_is_server)
#endif
{
license_destroy();
__mg_license_destroy();
}
#ifdef _MGRM_STANDALONE

View File

@@ -518,8 +518,8 @@ int GUIAPI InitGUI (int args, const char *agr[])
g_rcScr.bottom = GetGDCapability (HDC_SCREEN_SYS, GDCAP_MAXY) + 1;
#endif
license_create();
splash_draw_framework();
__mg_license_create();
__mg_splash_draw_framework();
/* Init mouse cursor. */
step++;
@@ -527,7 +527,7 @@ int GUIAPI InitGUI (int args, const char *agr[])
_ERR_PRINTF ("KERNEL>InitGUI: Count not init mouse cursor!\n");
goto failure1;
}
splash_progress();
__mg_splash_progress();
/* Init low level event */
step++;
@@ -535,7 +535,7 @@ int GUIAPI InitGUI (int args, const char *agr[])
_ERR_PRINTF ("KERNEL>InitGUI: Low level event initialization failure!\n");
goto failure1;
}
splash_progress();
__mg_splash_progress();
/** Init LF Manager */
step++;
@@ -543,7 +543,7 @@ int GUIAPI InitGUI (int args, const char *agr[])
_ERR_PRINTF ("KERNEL>InitGUI: Initialization of LF Manager failure!\n");
goto failure;
}
splash_progress();
__mg_splash_progress();
#ifdef _MGHAVE_MENU
/* Init menu */
@@ -560,7 +560,7 @@ int GUIAPI InitGUI (int args, const char *agr[])
_ERR_PRINTF ("KERNEL>InitGUI: Init Control Class failure!\n");
goto failure;
}
splash_progress();
__mg_splash_progress();
/* Init accelerator */
step++;
@@ -568,21 +568,21 @@ int GUIAPI InitGUI (int args, const char *agr[])
_ERR_PRINTF ("KERNEL>InitGUI: Init Accelerator failure!\n");
goto failure;
}
splash_progress();
__mg_splash_progress();
step++;
if (!mg_InitDesktop ()) {
_ERR_PRINTF ("KERNEL>InitGUI: Init Desktop failure!\n");
goto failure;
}
splash_progress();
__mg_splash_progress();
step++;
if (!mg_InitFreeQMSGList ()) {
_ERR_PRINTF ("KERNEL>InitGUI: Init free QMSG list failure!\n");
goto failure;
}
splash_progress();
__mg_splash_progress();
step++;
if (!createThreadInfoKey ()) {
@@ -590,7 +590,7 @@ int GUIAPI InitGUI (int args, const char *agr[])
goto failure;
}
splash_delay();
__mg_splash_delay();
step++;
if (!SystemThreads()) {
@@ -627,7 +627,7 @@ void GUIAPI TerminateGUI (int not_used)
pthread_join (__mg_parsor, NULL);
deleteThreadInfoKey ();
license_destroy();
__mg_license_destroy();
__mg_quiting_stage = _MG_QUITING_STAGE_TIMER;
mg_TerminateTimer ();

View File

@@ -100,11 +100,12 @@ static int s_tick_last_input;
static BOOL screensaver_running;
extern int dskCreateTopZOrderNode (int cli, const RECT *rc);
extern int dskDestroyTopZOrderNode (int cli, int idx_znode);
extern int dskSetTopForEver(int cli, int idx_znode, BOOL show);
extern void dskRefreshAllClient (const RECT* invrc);
#endif
#endif
extern int dskSetZNodeAlwaysTop(int cli, int idx_znode, BOOL show);
/***********************************************************
* Product ID
***********************************************************/
@@ -182,31 +183,33 @@ static void watermark_init(void)
/***********************************************************
* Screensaver
***********************************************************/
#ifdef _MG_ENABLE_SCREENSAVER
#if 0
// moved to desktop.c
static int s_screensaver_node;
void screensaver_show(void)
{
dskSetTopForEver(0, s_screensaver_node, TRUE);
dskShowWindow (0, s_screensaver_node);
dskMove2Top (0, s_screensaver_node);
}
void screensaver_hide(void)
{
dskSetTopForEver(0, s_screensaver_node, FALSE);
dskHideWindow (0, s_screensaver_node);
}
void screensaver_create(void)
void __mg_screensaver_create(void)
{
/* create screensaver node. */
if (!s_screensaver_node) {
RECT rcScr = GetScreenRect();
s_screensaver_node = dskCreateTopZOrderNode(0, &rcScr);
dskSetTopForEver(0, s_screensaver_node, TRUE);
screensaver_hide();
s_screensaver_node = dskCreateTopZOrderNode (0, &rcScr);
dskSetZNodeAlwaysTop (0, s_screensaver_node);
dskHideWindow (0, s_screensaver_node);
}
}
void screensaver_destroy(void)
void __mg_screensaver_destroy(void)
{
/* destroy screensaver node. */
if (s_screensaver_node) {
@@ -214,6 +217,9 @@ void screensaver_destroy(void)
s_screensaver_node = 0;
}
}
#endif
#ifdef _MG_ENABLE_SCREENSAVER
static void screensaver_update(void)
{
@@ -295,7 +301,7 @@ static void splash_init(void)
splash_adjust_y = (RECTH(rcScr) - SPLASH_H)*3 / 5;
}
void splash_draw_framework (void)
void __mg_splash_draw_framework (void)
{
char text[64];
RECT rc_text;
@@ -344,7 +350,7 @@ void splash_draw_framework (void)
SetTextColor(HDC_SCREEN_SYS, old_text);
}
void splash_progress (void)
void __mg_splash_progress (void)
{
if (SPLASH_BAR_RIGHT == splash_bar_direction) {
splash_bar_postion += SPLASH_BAR_STEP;
@@ -366,14 +372,14 @@ void splash_progress (void)
0, 0, &g_bitmap_progressbar);
}
void splash_delay (void)
void __mg_splash_delay (void)
{
int i;
for (i = 0;
__mg_quiting_stage > 0 && i < _MG_LICENSE_SPLASH_STEP;
i++) {
splash_progress();
__mg_splash_progress();
__mg_os_time_delay (_MG_LICENSE_SPLASH_MSEC);
}
}
@@ -510,7 +516,7 @@ static int my_decrypt(RC4_KEY *key, int in_len, unsigned char *in) {
}
#endif /* ENCRYPTED */
void license_create(void) {
void __mg_license_create(void) {
int i;
for (i=0; i<LICENSE_BITMAP_NR; ++i) {
@@ -538,7 +544,7 @@ void license_create(void) {
watermark_init();
}
void license_destroy (void) {
void __mg_license_destroy (void) {
int i;
for (i = 0; i < LICENSE_BITMAP_NR; i++) {
UnloadBitmap(&g_license_bitmaps[i]);
@@ -548,7 +554,7 @@ void license_destroy (void) {
#endif /* _MG_ENABLE_SPLASH || _MG_ENABLE_SCREENSAVER || _MG_ENABLE_WATERMARK */
#if defined(_MG_ENABLE_SCREENSAVER) || defined(_MG_ENABLE_WATERMARK)
void license_on_input(void)
void __mg_license_on_input(void)
{
#ifdef _MGRM_PROCESSES
RECT rcScr = GetScreenRect();
@@ -565,12 +571,12 @@ void license_on_input(void)
if (activeWnd) {
SendNotifyMessage(activeWnd, MSG_CANCELSCREENSAVER, 0, 0);
} else {
screensaver_hide();
__mg_screensaver_hide();
SendNotifyMessage (HWND_DESKTOP, MSG_PAINT, 0, 0);
}
}
#else
screensaver_hide();
__mg_screensaver_hide();
#if defined(_MGRM_PROCESSES)
dskRefreshAllClient (&rcScr);
#elif defined(_MGRM_STANDALONE)
@@ -584,7 +590,7 @@ void license_on_input(void)
}
}
void license_on_timeout(void)
void __mg_license_on_timeout(void)
{
static unsigned int old_tick_count;
unsigned int current_tick_count;
@@ -607,7 +613,7 @@ void license_on_timeout(void)
/* screensaver is not running, show it */
if ((current_tick_count - s_tick_last_input) > _MG_LICENSE_SCREENSAVER_TIMEOUT) {
screensaver_running = TRUE;
screensaver_show();
__mg_screensaver_show();
}
}
}

View File

@@ -116,7 +116,7 @@ static BOOL do_alloc_layer (MG_Layer* layer, const char* name,
zi->size_usage_bmp = SIZE_USAGE_BMP;
zi->size_maskrect_usage_bmp = SIZE_MASKRECT_USAGE_BMP;
_DGB_PRINTF("size_zi: %lu, size_usage_bmp: %d, size_maskrect_usage_bmp: %d\n",
_DBG_PRINTF("size_zi: %lu, size_usage_bmp: %d, size_maskrect_usage_bmp: %d\n",
sizeof (*zi), zi->size_usage_bmp, zi->size_maskrect_usage_bmp);
zi->max_nr_popupmenus = DEF_NR_POPUPMENUS;

View File

@@ -301,7 +301,7 @@ BOOL GUIAPI ServerStartup (int nr_globals,
__mg_start_server_desktop ();
screensaver_create();
__mg_screensaver_create();
return TRUE;