]> git.stg.codes - stg.git/blobdiff - stglibs/srvconf.lib/parser.cpp
A bit better Makefile
[stg.git] / stglibs / srvconf.lib / parser.cpp
index 139c91bc6dc0a1b775ec11df1977523cda393498..9373952e3752387f48f7b85eb94570fe912ef5cf 100644 (file)
@@ -34,7 +34,6 @@
 #include <string>
 
 #include "common.h"
-//#include "srvconf_common.h"
 #include "stg_const.h"
 #include "servconf.h"
 
@@ -46,6 +45,7 @@ using namespace std;
 PARSER_GET_USERS::PARSER_GET_USERS()
     : RecvUserDataCb(NULL),
       userDataCb(NULL),
+      user(),
       depth(0),
       error(false)
 {
@@ -165,6 +165,14 @@ if (strcasecmp(el, "credit") == 0)
         }
     }
 
+if (strcasecmp(el, "creditExpire") == 0)
+    {
+    if (str2x(attr[1], user.creditExpire) < 0)
+        {
+        return;
+        }
+    }
+
 /*if (strcasecmp(el, "freemb") == 0)
     {
     if (strtodouble2(attr[1], user.freeMb) < 0)
@@ -379,6 +387,7 @@ userDataCb = data;
 PARSER_GET_USER::PARSER_GET_USER()
     : RecvUserDataCb(NULL),
       userDataCb(NULL),
+      user(),
       depth(0),
       error(false)
 {
@@ -518,6 +527,14 @@ if (strcasecmp(el, "currip") == 0)
     user.ip = inet_addr(attr[1]);
     }
 
+if (strcasecmp(el, "creditExpire") == 0)
+    {
+    if (str2x(attr[1], user.creditExpire) < 0)
+        {
+        return;
+        }
+    }
+
 for (int i = 0; i < USERDATA_NUM; i++)
     {
     string num;
@@ -649,7 +666,8 @@ PARSER_GET_SERVER_INFO::PARSER_GET_SERVER_INFO()
     : RecvServerInfoDataCb(NULL),
       serverInfoDataCb(NULL),
       depth(0),
-      error(false)
+      error(false),
+      serverInfo()
 {
 }
 //-----------------------------------------------------------------------------