From d41a003bccf5537d7e7f6c162f874fc6bfd1fee6 Mon Sep 17 00:00:00 2001 From: darkvater Date: Sun, 16 Jan 2005 00:23:19 +0000 Subject: [PATCH] (svn r1532) -Fix: [1103078] default service period patch options are now cast to 0 with right variable size. --- settings_gui.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/settings_gui.c b/settings_gui.c index 9b19a71197..4bae1e5821 100644 --- a/settings_gui.c +++ b/settings_gui.c @@ -737,7 +737,18 @@ static void WritePE(const PatchEntry *pe, int32 val) { if ((pe->flags & PF_0ISDIS) && val <= 0) { - *(bool*)pe->variable = 0; // "clamp" 'disabled' value to smallest type, PE_BOOL + // "clamp" 'disabled' value to smallest type + switch (pe->type) { + case PE_BOOL: case PE_UINT8: + *(bool*)pe->variable = 0; + break; + case PE_INT16: case PE_UINT16: + *(int16*)pe->variable = 0; + break; + case PE_CURRENCY: case PE_INT32: + *(int32*)pe->variable = 0; + break; + } return; }