]> git.ipfire.org Git - thirdparty/sarg.git/commitdiff
Fix uninitialized variables.
authorFrédéric Marchal <fmarchal@users.sourceforge.net>
Mon, 21 Dec 2009 19:05:27 +0000 (19:05 +0000)
committerFrédéric Marchal <fmarchal@users.sourceforge.net>
Mon, 21 Dec 2009 19:05:27 +0000 (19:05 +0000)
Report the correct day of week in index.html

download.c
util.c

index 92afee210848f9b40547270944db3c876d055400..d0a47a95878d3d1e1fe1d9fd7a3933dfea5dc927 100644 (file)
@@ -222,6 +222,7 @@ void set_download_suffix(const char *list)
       if (DownloadSuffix[i] == ',') {
          DownloadSuffix[i] = '\0';
          if (*str) {
+            cmp = -1;
             for (j=0 ; j<NDownloadSuffix && (cmp=strcasecmp(str,DownloadSuffixIndex[j]))>0 ; j++);
             if (cmp != 0) {
                for (k=NDownloadSuffix ; k>j ; k--)
@@ -235,6 +236,7 @@ void set_download_suffix(const char *list)
    }
 
    if (*str) {
+      cmp = -1;
       for (j=0 ; j<NDownloadSuffix && (cmp=strcasecmp(str,DownloadSuffixIndex[j]))>0 ; j++);
       if (cmp != 0) {
          for (k=NDownloadSuffix ; k>j ; k--)
@@ -254,7 +256,7 @@ int is_download_suffix(const char *url)
    int cmp;
    const int max_suffix=10;
 
-   if(DownloadSuffix == NULL || NDownloadSuffix == 0) return(0);
+   if (DownloadSuffix == NULL || NDownloadSuffix == 0) return(0);
 
    urllen=strlen(url)-1;
    if (urllen<=0) return(0);
diff --git a/util.c b/util.c
index f48754ce1213ff2e19fd1ff0022190c1817ded41..aa728d7fe0407fe98d22e1a3e07f38f49606f6f9 100644 (file)
--- a/util.c
+++ b/util.c
@@ -421,59 +421,61 @@ void fixip(char *ip)
 char *fixnum(long long int value, int n)
 {
 #define MAXLEN_FIXNUM 1024
-   char num[MAXLEN_FIXNUM];
+   char num[MAXLEN_FIXNUM]="";
    char buf[MAXLEN_FIXNUM * 2];
    char *pbuf;
    static char ret[MAXLEN_FIXNUM * 2];
    char *pret;
    register int i, j, k;
+   int numlen;
    static char abbrev[30];
 
    my_lltoa(value, num, 0);
 
    if(strcmp(DisplayedValues,"abbreviation") == 0) {
-      if(strlen(num) <= 3)
+      numlen = strlen(num);
+      if(numlen <= 3)
          sprintf(abbrev,"%s",num);
-      if(strlen(num) == 4 || strlen(num) == 7 || strlen(num) == 10 || strlen(num) == 13) {
+      if(numlen == 4 || numlen == 7 || numlen == 10 || numlen == 13) {
          snprintf(abbrev,2,"%s",num);
          strncat(abbrev,".",1);
          strncat(abbrev,num+1,2);
          if(!n) return(abbrev);
-         if(strlen(num) == 4)
+         if(numlen == 4)
             strncat(abbrev,"K",1);
-         else if(strlen(num) == 7)
+         else if(numlen == 7)
             strncat(abbrev,"M",1);
-         else if(strlen(num) == 10)
+         else if(numlen == 10)
             strncat(abbrev,"G",1);
-         else if(strlen(num) == 13)
+         else if(numlen == 13)
             strncat(abbrev,"T",1);
       }
-      if(strlen(num) == 5 || strlen(num) == 8 || strlen(num) == 11 || strlen(num) == 14) {
+      if(numlen == 5 || numlen == 8 || numlen == 11 || numlen == 14) {
          snprintf(abbrev,3,"%s",num);
          strncat(abbrev,".",1);
          strncat(abbrev,num+2,2);
          if(!n) return(abbrev);
-         if(strlen(num) == 5)
+         if(numlen == 5)
             strncat(abbrev,"K",1);
-         else if(strlen(num) == 8)
+         else if(numlen == 8)
             strncat(abbrev,"M",1);
-         else if(strlen(num) == 11)
+         else if(numlen == 11)
             strncat(abbrev,"G",1);
-         else if(strlen(num) == 14)
+         else if(numlen == 14)
             strncat(abbrev,"T",1);
       }
-      if(strlen(num) == 6 || strlen(num) == 9 || strlen(num) == 12 || strlen(num) == 15) {
+      if(numlen == 6 || numlen == 9 || numlen == 12 || numlen == 15) {
          snprintf(abbrev,4,"%s",num);
          strncat(abbrev,".",1);
          strncat(abbrev,num+3,2);
          if(!n) return(abbrev);
-         if(strlen(num) == 6)
+         if(numlen == 6)
             strncat(abbrev,"K",1);
-         else if(strlen(num) == 9)
+         else if(numlen == 9)
             strncat(abbrev,"M",1);
-         else if(strlen(num) == 12)
+         else if(numlen == 12)
             strncat(abbrev,"G",1);
-         else if(strlen(num) == 15)
+         else if(numlen == 15)
             strncat(abbrev,"T",1);
       }
 
@@ -627,6 +629,8 @@ void obtdate(const char *dirname, const char *name, char *data)
 void formatdate(char *date,int date_size,int year,int month,int day,int hour,int minute,int second,int dst)
 {
    struct tm ltm;
+   time_t unixtime;
+   struct tm *fulltm;
 
    memset(&ltm,0,sizeof(ltm));
    if (year>=1900) ltm.tm_year=year-1900;
@@ -636,8 +640,10 @@ void formatdate(char *date,int date_size,int year,int month,int day,int hour,int
    if (minute>=0 && minute<60) ltm.tm_min=minute;
    if (second>=0 && second<60) ltm.tm_sec=second;
    ltm.tm_isdst=dst;
-   //strftime(date,date_size,"%a %b %d %H:%M:%S %Z %Y",&ltm);
-   strftime(date,date_size,"%c",&ltm);
+   unixtime=mktime(&ltm); //fill the missing entries
+   fulltm=localtime(&unixtime);
+   //strftime(date,date_size,"%a %b %d %H:%M:%S %Z %Y",fulltm);
+   strftime(date,date_size,"%c",fulltm);
 }
 
 
@@ -676,7 +682,7 @@ void obttotal(const char *dirname, const char *name, char *tbytes, const char *t
    char warea[MAXLEN];
    long long int med=0;
    long long int wtuser=0;
-   long long int twork;
+   long long int twork=0;
    struct getwordstruct gwarea;
 
    sprintf(wdir,"%s%s/sarg-general",dirname,name);