Преглед изворни кода

* Port [3296] to 1.2.14
* Add VAR_SHORT for (short)s
* Fix an overflow in set on default_port (short) which broken answer_ctcp



svn: 3297

Bryan Drewery пре 19 година
родитељ
комит
37bf308bbf
2 измењених фајлова са 7 додато и 2 уклоњено
  1. 5 2
      src/set.c
  2. 2 0
      src/set.h

+ 5 - 2
src/set.c

@@ -99,7 +99,7 @@ static variable_t vars[] = {
 #endif
 #endif
  VAR("promisc",		&promisc,		VAR_INT|VAR_DETECTED,				0, 4, "warn"),
  VAR("promisc",		&promisc,		VAR_INT|VAR_DETECTED,				0, 4, "warn"),
  VAR("realname",	botrealname,		VAR_STRING|VAR_NOLHUB,				0, 0, "A deranged product of evil coders"),
  VAR("realname",	botrealname,		VAR_STRING|VAR_NOLHUB,				0, 0, "A deranged product of evil coders"),
- VAR("server-port",	&default_port,		VAR_INT|VAR_NOLHUB,				0, 65535, "6667"),
+ VAR("server-port",	&default_port,		VAR_INT|VAR_SHORT|VAR_NOLHUB,			0, 65535, "6667"),
  VAR("servers",		&serverlist,		VAR_SERVERS|VAR_LIST|VAR_SHUFFLE|VAR_NOLHUB|VAR_NOLDEF,	0, 0, DEFAULT_SERVERS),
  VAR("servers",		&serverlist,		VAR_SERVERS|VAR_LIST|VAR_SHUFFLE|VAR_NOLHUB|VAR_NOLDEF,	0, 0, DEFAULT_SERVERS),
  VAR("servers6",	&serverlist,		VAR_SERVERS|VAR_LIST|VAR_SHUFFLE|VAR_NOLHUB|VAR_NOLDEF,	0, 0, DEFAULT_SERVERS6),
  VAR("servers6",	&serverlist,		VAR_SERVERS|VAR_LIST|VAR_SHUFFLE|VAR_NOLHUB|VAR_NOLDEF,	0, 0, DEFAULT_SERVERS6),
  VAR("trace",		&trace,			VAR_INT|VAR_DETECTED,				0, 4, "die"),
  VAR("trace",		&trace,			VAR_INT|VAR_DETECTED,				0, 4, "die"),
@@ -238,7 +238,10 @@ sdprintf("var (mem): %s -> %s", var->name, datain);
         number = randint(CLOAK_COUNT - 1) + 1;
         number = randint(CLOAK_COUNT - 1) + 1;
     }
     }
 
 
-    *(int *) (var->mem) = number;
+    if (VAR_SHORT)
+      *(short *) (var->mem) = (short) number;
+    else
+      *(int *) (var->mem) = number;
 
 
     if (var->flags & VAR_CLOAK && !conf.bot->hub)
     if (var->flags & VAR_CLOAK && !conf.bot->hub)
       scriptchanged();
       scriptchanged();

+ 2 - 0
src/set.h

@@ -32,6 +32,8 @@
 #define VAR_NOLDEF	BIT16
 #define VAR_NOLDEF	BIT16
 /* Don't set global on hub */
 /* Don't set global on hub */
 #define VAR_NOGHUB	BIT17
 #define VAR_NOGHUB	BIT17
+/* (short) number */
+#define VAR_SHORT 	BIT18
 
 
 #define VAR_LDATA 	1
 #define VAR_LDATA 	1
 #define VAR_GDATA	2
 #define VAR_GDATA	2