Resolve some coverity warnings
authorPeter Howkins <flibble@users.sf.net>
Thu, 8 Mar 2018 23:03:21 +0000 (23:03 +0000)
committerPeter Howkins <flibble@users.sf.net>
Thu, 8 Mar 2018 23:03:21 +0000 (23:03 +0000)
cde/lib/csa/attr.c
cde/lib/csa/calendar.c
cde/lib/csa/laccess.c
cde/lib/csa/reparser.y
cde/programs/dtsession/SmGlobals.c
cde/programs/dtsession/SmLock.c
cde/programs/dtsession/SmRestore.c
cde/programs/dtsession/SmSave.c
cde/programs/dtstyle/Backdrop.c
cde/programs/dtstyle/I18nEnv.c

index 0c59ceda290c5d7ed6e1d5a38629ff8be172484f..7270363f389608ec1d1701b455dcbf96983f7538 100644 (file)
@@ -313,8 +313,10 @@ _DtCm_check_cal_csa_attributes(
            &realnum)) != CSA_SUCCESS)
                return (stat);
 
-       if (checkattrnum == B_TRUE && realnum == 0)
+       if (checkattrnum == B_TRUE && realnum == 0) {
+               free(hattrs);
                return (CSA_E_INVALID_PARAMETER);
+       }
 
        stat = _DtCm_check_hashed_cal_attributes(fvers, hnum, hattrs,
                NULL, cname, checkreadonly, firsttime, B_TRUE);
@@ -344,8 +346,10 @@ _DtCm_check_cal_cms_attributes(
            &realnum)) != CSA_SUCCESS)
                return (stat);
 
-       if (checkattrnum == B_TRUE && realnum == 0)
+       if (checkattrnum == B_TRUE && realnum == 0) {
+               free(hattrs);
                return (CSA_E_INVALID_PARAMETER);
+       }
 
        stat = _DtCm_check_hashed_cal_attributes(fvers, hnum, hattrs,
                owner, cname, checkreadonly, firsttime, B_FALSE);
@@ -372,8 +376,10 @@ _DtCm_check_entry_attributes(
            &realnum)) != CSA_SUCCESS)
                return (stat);
 
-       if (checkattrnum == B_TRUE && realnum == 0)
+       if (checkattrnum == B_TRUE && realnum == 0) {
+               free(hattrs);
                return (CSA_E_INVALID_PARAMETER);
+       }
 
        stat = _DtCm_check_hashed_entry_attributes(fvers, hnum, hattrs,
                utype);
@@ -400,8 +406,10 @@ _DtCm_check_entry_cms_attributes(
            &realnum)) != CSA_SUCCESS)
                return (stat);
 
-       if (checkattrnum == B_TRUE && realnum == 0)
+       if (checkattrnum == B_TRUE && realnum == 0) {
+               free(hattrs);
                return (CSA_E_INVALID_PARAMETER);
+       }
 
        stat = _DtCm_check_hashed_entry_attributes(fvers, hnum, hattrs,
                utype);
@@ -1184,10 +1192,12 @@ _DtCm_free_csa_access_list(CSA_access_list alist)
                nptr = alist->next;
 
                if (alist->user) {
-                       if (alist->user->user_name)
+                       if (alist->user->user_name) {
                                free(alist->user->user_name);
-                       if (alist->user->calendar_address);
+                       }
+                       if (alist->user->calendar_address) {
                                free(alist->user->calendar_address);
+                       }
                        free(alist->user);
                }
 
index c0eb268fc0927e2330d234b7ecd5f4e00d61ef25..1f74fe493e60cb35eafc5928c0279c34ad76e2e7 100644 (file)
@@ -299,8 +299,10 @@ _DtCm_list_old_cal_attr_names(
                return (CSA_E_INSUFFICIENT_MEMORY);
 
        /* find out whether we know the owner of the calendar */
-       if ((stat = _get_owner_from_old_cal(cal, buf)) != CSA_SUCCESS)
+       if ((stat = _get_owner_from_old_cal(cal, buf)) != CSA_SUCCESS) {
+               _DtCm_free(names);
                return (stat);
+       }
 
        for (i = 1, j = 0; i <= _DtCM_DEFINED_CAL_ATTR_SIZE; i++) {
                if (_CSA_cal_attr_info[i].fst_vers > 0 &&
index da64c1080284cafbeccfa4b95ad9fd34aa017a4f..83e3c6824738e838e55a7a27049104fe56377846 100644 (file)
@@ -85,8 +85,11 @@ _DtCmIsSameUser(char *user1, char *user2)
        str1 = _DtCmGetPrefix(user1, '@');
        str2 = _DtCmGetPrefix(user2, '@');
 
-       if (str1 == NULL || str2 == NULL)
+       if (str1 == NULL || str2 == NULL) {
+               free(str1);
+               free(str2);
                return (B_FALSE);
+       }
 
        if (strcmp(str1, str2)) {
                free(str1);
index f541978fb721d6bbca8e4b5964068495493468d6..8849be8a9abef81674eaeb2c8097f219cdd5ce74 100644 (file)
@@ -926,8 +926,10 @@ DeriveDailyEvent(
                /* Convert from list to array, sort */
        dd->dd_time = (Time *)ConvertNumList(time_list, &(dd->dd_ntime));
 
-       if (interval < 1)
+       if (interval < 1) {
+               free(dd);
                return NULL;
+       }
 
        re = (RepeatEvent *)calloc(1, sizeof(RepeatEvent));
                                
@@ -963,8 +965,10 @@ DeriveWeeklyEvent(
                /* Convert from list to array, sort */
        wd->wd_daytime = ConvertDayTime(dtl, &(wd->wd_ndaytime));
 
-       if (interval < 1)
+       if (interval < 1) {
+               free(wd);
                return NULL;
+       }
 
        re = (RepeatEvent *)calloc(1, sizeof(RepeatEvent));
                                
@@ -1006,8 +1010,10 @@ DeriveMonthlyEvent(
                        (NumberList *)data_list, &(md->md_nitems));
        }
 
-       if (interval < 1)
+       if (interval < 1) {
+               free(md);
                return NULL;
+       }
 
        re = (RepeatEvent *)calloc(1, sizeof(RepeatEvent));
                                
@@ -1044,8 +1050,10 @@ DeriveYearlyEvent(
                        /* Convert from list to array, sort */
        yd->yd_items = ConvertNumList(nl, &(yd->yd_nitems));
 
-       if (interval < 1)
+       if (interval < 1) {
+               free(yd);
                return NULL;
+       }
 
        re = (RepeatEvent *)calloc(1, sizeof(RepeatEvent));
                                
index c98e23696d4233cc1dd25dd6eb14c76cc1cfd1fc..75c03d0c1e420faacf60ffc6bdf4e9863fe2bc40 100644 (file)
@@ -57,6 +57,8 @@
  *****************************************************************************
  *************************************<+>*************************************/
 #include <stdio.h>
+#include <errno.h>
+#include <string.h>
 #include <ctype.h>
 #include <sys/wait.h>
 #include <sys/types.h>
@@ -1161,7 +1163,10 @@ SetSavePath(
                 smGD.resourcePath[0] = 0;
                 return(-1);
             }
-            chmod(smGD.clientPath, 0755);
+            if(-1 == chmod(smGD.clientPath, 0755))
+            {
+                               fprintf(stderr, "%s chmod error %s\n", smGD.clientPath, strerror(errno));
+                       }
         }
         else
         {
@@ -1293,7 +1298,10 @@ SetFontSavePath(char *langPtr)
             smGD.fontPath[0] = 0;
             return(-1);
         }
-        chmod(smGD.fontPath, 0755);
+        if(-1 == chmod(smGD.fontPath, 0755))
+        {
+                       fprintf(stderr, "%s chmod error %s\n", smGD.fontPath, strerror(errno)); 
+               }
     }
 
     /*
index fb45d37c8070df3a328202ba6b7f252caff2de00..8b75351ed3027fabca2568bcda9a8a1e436ff42d 100644 (file)
@@ -161,8 +161,8 @@ static Boolean CanReAuthenticate(char *name, uid_t uid, char *passwd,
 {
   Boolean fail = False;
 
-  *pwent = (name == NULL) ? getpwuid(uid) : getpwnam(name);
   if (pwent)
+    *pwent = (name == NULL) ? getpwuid(uid) : getpwnam(name);
     *spent = getspnam((*pwent)->pw_name);
 
 #ifdef JET_AUTHDEBUG
index 53835c254ff5a57a497eb8975a731ae4a4a51603..8ad720ae6d2ae1221ea9eddaa97c08981ff9ad2a 100644 (file)
@@ -2013,6 +2013,7 @@ RestoreClients( void )
                            SM_FREE((char *) remoteBuf[i]);
                        }
                    }
+                   free(displayName);
                    return(-1);
                }
                hintPtr = NULL;
index ee849071d8a27f8c4b58052c63704f53e26a394b..0731af7529134973a3b42a9ec5365ed80cab8d66 100644 (file)
@@ -1620,12 +1620,12 @@ OutputResource( void )
     langPtr = getenv("LANG");
     if((langPtr != NULL) && (*langPtr != 0))
     {
-       sprintf(resSpec, "%s*%s: %s\n", SM_RESOURCE_NAME, SmNsessionLang,
+       snprintf(resSpec, resSize, "%s*%s: %s\n", SM_RESOURCE_NAME, SmNsessionLang,
                langPtr);
     }
     else
     {
-       sprintf(resSpec, "%s*%s:   \n", SM_RESOURCE_NAME, SmNsessionLang);
+       snprintf(resSpec, resSize, "%s*%s:   \n", SM_RESOURCE_NAME, SmNsessionLang);
     }
 
     fltYRes = ((float) DisplayHeight(smGD.display, 0) /
index 949fe7908fc33e195023d6acf996047af3217729..126cad830a7621496f46aff36739bf29f6f3d5e0 100644 (file)
@@ -594,10 +594,12 @@ static
   
   /* read the directory $HOME/.dt/backdrops */
   string = (char *)XtMalloc(strlen(style.home) + strlen("/.dt/backdrops") + 1);
-  sprintf(string, "%s/.dt/backdrops", style.home);
-  ReadBitmapDirectory(string);
   if (string != NULL)
+  {
+    sprintf(string, "%s/.dt/backdrops", style.home);
+    ReadBitmapDirectory(string);
     XtFree(string);
+  }
 
   if (backdrops.tmpNumBitmaps == 0)
     {
index 5e9f84cab67afb82f3dcd8efadf3272620ba8692..f410e73186f463c79e0ce0906554fc42ebd95a09 100644 (file)
@@ -243,12 +243,13 @@ GetUserIMSelectionFile(
 
     ret = GetUserFileName(env);
     
-    if (ret == NoError) {
-       /* Look if this file is readable */
-       if ((fp = fopen(env->file_sel->fname, "r")) == NULL)
-           env->file_sel->start_mode = -1;
-           return ErrNoSelectionFile;
-    }
+       if (ret == NoError) {
+               /* Look if this file is readable */
+               if ((fp = fopen(env->file_sel->fname, "r")) == NULL) {
+                       env->file_sel->start_mode = -1;
+                       return ErrNoSelectionFile;
+               }
+       }
 
     start_tag_line(env->file_sel->fname);
     ret = ReadImSelectionFile(env->file_sel, fp);
@@ -314,31 +315,33 @@ ReadImSelectionFile(
 
     imsname = hostname = NULL;
 
-    while ((line_num = read_tag_line(fp, &lp, &valp)) > 0) {
-       if (!valp) {
-           continue;
+       while ((line_num = read_tag_line(fp, &lp, &valp)) > 0) {
+               if (!valp) {
+                       continue;
+               }
+               if (lp[0] != STR_PREFIX_CHAR) {
+                       continue;
+               }
+               if (strncmp(lp + 1, STR_SELECTMODE, 3) == 0) {
+                       if (str_to_int(valp, &i) && i >= 0) {
+                               select_mode = i;
+                       }
+               } else if (strncmp(lp + 1, STR_IMSNAME, 4) == 0) {
+                       vp = valp; cut_field(valp);
+                       if (*vp) {
+                               XtFree(imsname);
+                               imsname = XtNewString(vp);
+                       }
+               } else if (strncmp(lp + 1, STR_HOSTNAME, 4) == 0) {
+                       vp = valp; cut_field(valp);
+                       if (*vp) {
+                               XtFree(hostname);
+                               if (strcmp(vp, NAME_LOCAL)) {
+                                       hostname = XtNewString(vp);
+                               }
+                       }
+               }
        }
-       if (lp[0] != STR_PREFIX_CHAR) {
-           continue;
-       }
-       if (strncmp(lp + 1, STR_SELECTMODE, 3) == 0) {
-           if (str_to_int(valp, &i) && i >= 0)
-               select_mode = i;
-       } else if (strncmp(lp + 1, STR_IMSNAME, 4) == 0) {
-           vp = valp; cut_field(valp);
-           if (*vp) {
-               XtFree(imsname);
-               imsname = XtNewString(vp);
-           }
-       } else if (strncmp(lp + 1, STR_HOSTNAME, 4) == 0) {
-           vp = valp; cut_field(valp);
-           if (*vp) {
-               XtFree(hostname);
-               if (strcmp(vp, NAME_LOCAL))
-                   hostname = XtNewString(vp);
-           }
-       }
-    }
 
     fsel->im_name = imsname;
     fsel->hostname = hostname;
@@ -372,7 +375,7 @@ _DtI18nGetImList(
 
        case HOST_LOCAL:
            if (hostname && strcasecmp(hostname, "local") != 0)
-               env->ims_sel->host_name = hostname;             
+               env->ims_sel->host_name = hostname;
            ret = GetImsList(env, env->user_env->localhostname);
            break;
     }
@@ -631,6 +634,8 @@ _DtI18nWriteImSelectionFile(
     
     /* Close the file */
     fclose(fp);
+
+       return NoError;
 }
 
 static void