]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Refactor `switch_fulldate_cmp`
authorTravis Cross <tc@traviscross.com>
Fri, 22 Aug 2014 00:43:27 +0000 (00:43 +0000)
committerTravis Cross <tc@traviscross.com>
Fri, 22 Aug 2014 00:43:27 +0000 (00:43 +0000)
We're moving the variable declarations down to the smallest possible
scope (a good idea in general) so we can address the use of undefined
memory by the function in a later commit.

src/switch_utils.c

index a995ebc4050965e088ccf7ed90cb10950b38353b..2a6cbd649e957428f1a02e2afd3cb85a5b19bf90 100644 (file)
@@ -2994,21 +2994,19 @@ SWITCH_DECLARE(int) switch_fulldate_cmp(const char *exp, switch_time_t *ts)
        char *dup = strdup(exp);
        char *sStart;
        char *sEnd;
-       char *sDate;
-       char *sTime;
-       switch_time_t tsStart;
-       switch_time_t tsEnd;
-       struct tm tmTmp;
-       int year, month, day;
-       int hour, min, sec;
 
        switch_assert(dup);
 
        sStart = dup;
        if ((sEnd=strchr(dup, '~'))) {
+               char *sDate = sStart;
+               char *sTime;
                *sEnd++ = '\0';
-               sDate = sStart;
                if ((sTime=strchr(sStart, ' '))) {
+                       switch_time_t tsStart;
+                       struct tm tmTmp;
+                       int year, month, day;
+                       int hour, min, sec;
                        *sTime++ = '\0';
 
                        memset(&tmTmp, 0, sizeof(tmTmp));
@@ -3026,6 +3024,10 @@ SWITCH_DECLARE(int) switch_fulldate_cmp(const char *exp, switch_time_t *ts)
 
                        sDate = sEnd;
                        if ((sTime=strchr(sEnd, ' '))) {
+                               switch_time_t tsEnd;
+                               struct tm tmTmp;
+                               int year, month, day;
+                               int hour, min, sec;
                                *sTime++ = '\0';
 
                                memset(&tmTmp, 0, sizeof(tmTmp));